Om nah hoo pez nyeetz, Der Martin!
In JavaScript ist das zwar (imho) kein logischer Fehler, denn die Variablentypen werden (ungefragt und oft auch deinen Wünschen entsprechend) passend umgewandelt.
Auch in Javascript kann das sehr unerwartete Ergebnisse liefern - vor allem dann, wenn der erste Operand tatsächlich ein String ist, der Programmierer aber mit seinen Gedanken bei einem Zahlenwert ist:
Immer dann wenn die automatische Typumwandlung anders arbeitet als man gerade denkt.
Insofern ist es bei Programmiersprachen, die nicht lose typisiert sind, sogar weniger gefährlich, denn da sollte es einen Programmabbruch nebst Fehlermeldung geben.
Matthias