Читать книгу JavaScript für Ungeduldige - Cay Horstmann - Страница 29

Vorsicht

Оглавление

Wie Sie gesehen haben, ist der Ausdruck x + y eine Zahl, wenn beide Operanden Zahlen sind, und ein String, wenn es sich bei mindestens einem Operanden um einen String handelt. In allen anderen Fällen sind die Regeln ziemlich kompliziert und die Ergebnisse nur selten sinnvoll. Entweder werden beide Operanden in Strings verwandelt und verkettet oder in Zahlen konvertiert und addiert. Beispielsweise wird der Ausdruck null + undefined zu der numerischen Addition 0 + NaN ausgewertet, die wiederum NaN ergibt (siehe Tabelle 1–1). Bei den anderen arithmetischen Operatoren wird nur eine Umwandlung in Zahlen versucht. So ergibt beispielweise 6 * '7' den Wert 42, da der String '7' in die Zahl 7 konvertiert wird.

Wert Umwandlung in Zahl Umwandlung in String
Eine Zahl Die Zahl selbst Ein String aus den Ziffern dieser Zahl
Ein String aus Ziffern, die eine Zahl bilden Der Wert der Zahl Der String selbst
Der leere String '' 0 ''
Jeder andere String NaN Der String selbst
false 0 'false'
true 1 'true'
null 0 'null'
undefined NaN 'undefined'
Das leere Array [] 0 ''
Ein Array, das eine einzige Zahl enthält Die Zahl Ein String aus den Ziffern der Zahl
Andere Arrays NaN Die Elemente, umgewandelt in Strings und durch Kommata getrennt, z. B. '1,2,3'.
Objekte Standardmäßig NaN, kann aber angepasst werden Standardmäßig '[object Object]', kann aber angepasst werden.

Tab. 1–1 Umwandlung in Zahlen und Strings


JavaScript für Ungeduldige

Подняться наверх