NEWS
W in Kw umrechnen
-
warum hälst du dich noch mit toFixed auf?
Nach dem prüfen in der Dokumentation ist mir die Existenzberechtigung von toFixed nicht mehr so ganz klar, da nach ECMA-Spezifikation immer in Richtung der nächstgelegenen Dezimalstelle gerundet wird. Also 1.0-1.5 auf 1 und 1.6-1.9 auf 2.
Math.round (was ich in der 2. Lösung verwendet habe, rundet richtig kaufmännisch.
Nachteil ist, dass man die Anzahl der gewünschten Nachkommastellen nicht angeben kann.
Das kann man dann aber über 2-stufige teilen wieder ausgleichen, also1240 / 100 = 12,40, nach runden mit Math.round = 12
1250 / 100 = 12,50 nach runden mit Math.round = 1312/10 = 1,2
13/10 = 1,3kleiner edge case, wenn als gerundetes ergebnis ein ?.0 rauskommt, also 1.0, 2.0 etc,
dann wird dir das .0 nicht angezeigt. wenn du auch da eine konsistente anzeige haben willst, dann kannst du dort wieder das toFixed einsetzen. Da die Zahl ja schon gerundet ist, verursacht das kein Problem mehr.{val:0_userdata.0.testFolder.test;parseInt(val)<1000 ? parseInt(val)+" w " : (Math.round(parseInt(val)/100)/10).toFixed(1)+" kW"}
@oliverio said in W in Kw umrechnen:
@martinp
warum hälst du dich noch mit toFixed auf?Ist vielleicht eine Berufskrankheit: Meine Programmiertätigkeit begann im Embedded Bereich, und mit Assembler und C/C++.
Da hat man sich angewöhnt, für jede Zeile Code zu bewertet, was sie für Ressourcen verbrauchen wird ...
Bei Deiner Lösung, sind es zwei Divisionen, bei mir eine Addition und eine Division.
Ist aber zugegeben ziemlich albern, da man gar nicht weiß, was da in den Aufrufen von toFixed() bzw. Round() so passiert .Bei Javascript im Browser gäbe es da eher zu beachten, dass man nicht zu viele Bibliotheken nachlädt, damit das Laden der Webseite nicht zu lange dauert.
Das ist hier aber sicherlich kein Aspekt, der bei node.JS Code ernsthaft berücksichtigt werden muss.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden