Ich habe eine Funktion switcher()
, die ein Object-Argument hat, video
. Es sollte 'Start'
wenn video.start <= video.ende
protokollieren. Es funktioniert in den meisten Fällen gut (Beispiel: video.start = 1
und video.ende = 3
), aber wenn video.start = 9
und video.ende = 10
es protokolliert 'End'
.Warum sind 10 weniger als 9?
function switcher(video)
{
console.log("Start: " + video.start);
console.log("End: " + video.ende);
if(video.start <= video.ende) // Not working correctly
{
console.log("Start");
}
else
{
console.log("End");
}
}
console.log()
Erfolge:
console.log: addon: Start: 1
console.log: addon: End: 3
console.log: addon: Start
console.log()
Failed:
console.log: addon: Start: 9
console.log: addon: End: 10
console.log: addon: End
Warum ist es so?
Wie kann ich das beheben?
Mögliches Duplikat von [Javascript String/Integer Vergleiche] (http://stackoverflow.com/questions/5630123/javascript-string-integer-comparisons) – Makyen
Zusätzliche doppelte Ziele: [Warum ist "10"> "9" = false?] (http://stackoverflow.com/questions/24025586/why-does-10-9-false) und [Warum ist beim Vergleichen von Zeichenfolgen in JavaScript eine Zeichenfolge größer als die andere Zeichenfolge?] (http: // stackoverflow. com/questions/7087811/why-is-one-string-größer als die anderen-wenn-strings-in-javascript vergleichen – Makyen