NEWS
Konvertierung nach Zahl = NaN
-
Hallo,
hat jemand eine Idee, warum hier die Konvertierung nach Zahl nicht klappt?
Im Log einmal ohne Konvertierung mit dem Ergebnis 9,43 und einmal mit Konvertierung und NaN.
javascript.0 21:04:19.716 info script.js.Eigene_Scripte.Test: registered 13 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 21:04:24.720 info script.js.Eigene_Scripte.Test: ben: 9,43 javascript.0 21:05:02.843 info Stopping script script.js.Eigene_Scripte.Test javascript.0 21:05:02.931 info Start JavaScript script.js.Eigene_Scripte.Test (Blockly) javascript.0 21:05:08.946 info script.js.Eigene_Scripte.Test: registered 13 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 21:05:13.953 info script.js.Eigene_Scripte.Test: NaN
-
in javascript wird eine zahl mit einem punkt von den nachkommastellen getrennt. mit komma ist es für js ein string und damit NaN (Not a Number)
das beste ist, zahlen immer nur als javascript zahl zu verarbeiten und erst in der anzeige dnn zu lokalisieren (also dann mit komma, ggfs mit tausender punkt, mit soundsoviel nachkommastellen)
-
Hab grad noch einen anderen Fehler gefunden.
Es standen wirklich noch Buchstaben vor.Jetzt ist es kein NaN mehr. Allerdings nur eine 9 ohne Komma. Dann muss ich das wohl erst ersetzen.
-
@david-g sagte in Konvertierung nach Zahl = NaN:
Allerdings nur eine 9 ohne Komma
auch das ist der Parsing Effekt. Dann liest js solange bis für number ungültige Zahlen kommen.
parseFloat("1.23"); //1.23 parseFloat("1,23"); //1
-
-
@david-g
schaust du nur in der objekt ansicht nach?
oder verwendest du eine visualisierung wie vis?
in vis bspw kann man das genau einstellen wie man das angezeigt haben möchte.alternativ musst du nach bearbeitung den punkt wieder in ein komma umwandeln. aber dann ist es für iobroker wieder ein string
-
@oliverio sagte in Konvertierung nach Zahl = NaN:
@david-g
schaust du nur in der objekt ansicht nach?
oder verwendest du eine visualisierung wie vis?
in vis bspw kann man das genau einstellen wie man das angezeigt haben möchte.alternativ musst du nach bearbeitung den punkt wieder in ein komma umwandeln. aber dann ist es für iobroker wieder ein string
Wird in meiner View dargestellt der Wert.
Möchte aber auch noch weiter mit rechnen.Ist das Prepaidguthaben auf meiner SIM die im iobroker eingebunden ist.
Die restlichen verfügbaren SMS sollen noch mit berechnet werden.Das nötigste kann ich auch noch von außen abrufen und steuern wenn das Internet ausgefallen ist.