Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Script Hilfe (Array)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script Hilfe (Array)

    This topic has been deleted. Only users with topic management privileges can see it.
    • fischi87
      fischi87 last edited by fischi87

      Hallo an die ganzen Skripter, ich habe hier ein code Schnipsel und würde gerne aus dem "myWallet" array (1. code) die zahlen addieren und in meinen euroWrapper (2. code), "Total: + die zahl + €, anzeigen lassen, wie stelle ich das an? wenn ich es so schreibe kommt nur die 2. zahl des Arrays. kann mir da jemand helfen?

      var cPrice = apiResult[j].price.replace("€", "");
              var cPrice = cPrice.replace(".","").replace(",", ".");
              var myWallet = (this.config.wallet[j] * cPrice || 0).toFixed(2);
              var priceWrapper = document.createElement('td');
              var price = document.createElement('price');
                 price.style.fontSize = "medium"
                 price.innerHTML = this.config.wallet[j] + ' x ' + cPrice + ' = ' + myWallet + ' €';
                 priceWrapper.appendChild(price);
      
      var total_euroWrapper = document.createElement('tr');
          total_euroWrapper.className = "total_money";
      
          if (this.config.total) {
              var euroWrapper = document.createElement('td');
              euroWrapper.className = "totalpreis";
              euroWrapper.style.fontSize = 'medium';
              euroWrapper.innerHTML = 'Total: ' + myWallet + '€';
      
              total_euroWrapper.appendChild(euroWrapper);
          }
      

      danke euch grüße

      OliverIO 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @fischi87 last edited by

        @fischi87

        mywallet ist kein Array.
        Welche Zahlen willst du addieren?.
        aktuell kann da gar nix angezeigt werden, da du zwar html elemente erzeugst, die aber nirgends in den html-baum einhängst.
        ich würde auch nicht soviel mit document.createElement arbeiten, höchstens mit einem, falls es im html baum noch kein element gibt, in dem du es anzeigen lassen möchtest.
        du kannst die elemente alle selbst in einen string schreiben und am Ende den dann innerHTML zuweisen.

        document.body.innerHTML="<div>123</div>";
        

        in zeile 5 erzeugst du ein html element tag "price" ist zwar gültig, aber der browser weiß nicht wie er das darstellen muss, wenn du da kein anderes framwork am laufen hast
        Zeile 2 ist auch sinnlos, erst . gegen , tauschen und dann gleich , gegen Punkt
        wenn du die gleiche variable mehrfach mit var initialisierst, dürftest du fehler bekommen

        fischi87 1 Reply Last reply Reply Quote 0
        • fischi87
          fischi87 @OliverIO last edited by fischi87

          @oliverio 4B8FA402-3D0F-4253-B58C-3A2FDCBB3BC0.jpeg

          795FDDFA-2CFA-4695-B2A4-0B54625CEE0D.jpeg

          ich würde gerne die 2 zahlen summieren.

          die ich erzeuge weiter oben das wallet mit:
          wallet: [zahl1, zahl2] diese 2 zahlen werden mit dem apiresult multipliziert und wie die siehst auch angezeigt.

          OliverIO 1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @fischi87 last edited by

            @fischi87

            sorry, das sind zu wenig informationen.
            wo hast du denn da genau Probleme.
            Als direkte Antwort auf Basis dieser Informationen könnte ich dir nur antworten

            zahl1+zahl2

            Ich sehe leider aus den beiden Codebeispielen immer noch nicht welche 2 Zahlen da addiert werden sollen, da die "Ausgabe" oben ja immer auf cPrice bzw. einem api-Ergebnis und irgendwas was in einem this.config.wallet basiert.

            fischi87 1 Reply Last reply Reply Quote 0
            • fischi87
              fischi87 last edited by

              @oliverio

              ich schick dir heut abend mal den kompletten code, vielleicht kannst da mehr herauslese. als ich. danke das du dir der sache annimmst!

              wie du ja auf dem fotos siehst, werden die zahlen ja dargestellt einmal die 2 zahlen separat und einmal halt im „Total“ wollte ich diese 2 zahlen addiert anzieigen lassen. in der var myWallet müssen ja dementsprechend 2 zahlen vorhanden sein sonst würde diese ja nicht einzeln aufgeführt werden.

              1 Reply Last reply Reply Quote 0
              • fischi87
                fischi87 @OliverIO last edited by fischi87

                GELÖST:

                    if (this.config.total) {
                      var cPrice_btc = apiResult[0].price.replace("€", "");
                      var cPrice_btc = cPrice_btc.replace(".","").replace(",", ".");
                      var btc_euro = (this.config.wallet[0] * cPrice_btc || 0)//.toFixed(2);
                      var cPrice_eth = apiResult[1].price.replace("€", "");
                      var cPrice_eth = cPrice_eth.replace(".","").replace(",", ".");
                      var eth_euro = (this.config.wallet[1] * cPrice_eth || 0)//.toFixed(2);
                      var gesamt = (btc_euro + eth_euro).toFixed(2);
                
                      var euroWrapper = document.createElement('td');
                      euroWrapper.className = "totalpreis";
                      euroWrapper.style.fontSize = 'medium';
                      euroWrapper.innerHTML = 'Total: ' + gesamt + '€';
                
                        total_euroWrapper.appendChild(euroWrapper);
                    }
                
                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                815
                Online

                31.8k
                Users

                80.0k
                Topics

                1.3m
                Posts

                2
                6
                244
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo