NEWS
UNSOLVED Funktion formatValue in Beschriftung
-
@paul53
Danke für die rasche Antwort. Ich bin zu blöd und verstehe deine Lösung nicht. Wie muss ich den String in der Beschriftung anpassen, dass es funktioniert?
Im Moment sieht der Beschrifungsstring so aus:{hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE} °C
wo kommt nun das val.toFixed(0) hin?
Gruss
Tom -
-
habe es mit einem html widget probiert
{vart:controll-own.0.AAATEST.TestString1; vart=Number(Math.round(vart*100)/100)}
rundet einen teststring auf 2 stellen nach dem komma
-
@liv-in-sky sagte in Funktion formatValue in Beschriftung:
{vart:controll-own.0.AAATEST.TestString1; vart=Number(Math.round(vart*10)/10)} -> modifiziert
dies hatte ich bereits in einem anderen Bezug versucht, die Ausgabe ist jedoch bei mehreren Nachkommastellen von
vart
x.x was funktioniert. Istvart
aber eine Zahl ohne Komastelle (z.b. 6), kommt als Ergebnis 6 statt 6.0 raus.@BitCoder möchte jedoch
(...) einer permanenten Nachkommastelle (...)
-
@ice987 sagte:
Zahl ohne Komastelle (z.b. 6), kommt als Ergebnis 6 statt 6.0 raus.
Das ist generell bei Zahlen so. Eine permanente Nachkommastelle kann nur ein String darstellen. In Javascript gibt es dafür zahl.toFixed(1):
-
das funktioniert bei mir
mit 6 =6.00
oder 6.4445 = 6.45{v:controll-own.0.AAATEST.TestString1;(v/1).toFixed(2)}
-
das funktioniert!
v
= 6: ergibt Ausgabe: 6.0
v
= 6.123: ergibt Ausgabe: 6.1Vielen Dank!
-
-
@liv-in-sky
Damit es klarer ist, würde ich es so verwenden:{val:hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE;Number(val).toFixed(1)} °C
Dass die Division durch 1 in eine Zahl wandelt, ist nicht für jeden gleich ersichtlich.
Anstelle von Number() kann auch parseFloat() verwendet werden. -
Jetzt bin ich überwältigt, wie viele sich beteiligt haben, sich der Sache anzunehmen.
Die Variante von paul53 gefällt mir persönlich am besten. Das mit der Division war mir nicht klar, bis du das mit dem Cast erklärt hast.
Besten Dank. Es funktioniert jetzt so, wie ich mir das vorgestellt habe.Trotzdem ist die Geschichte mit der Funktion formatValue(decimals) nicht gelöst. So wie es in der Dokumentation beschrieben ist, funktioniert es meines Erachtens nicht.
Gruss an alle Helfer
Tom