Gleichheit nach Wert und Typ in JavaScript
Angenommen, Sie möchten so vergleichen, dass eine Zahl in Anführungszeichen nicht gleich der gleichen Zahl ohne Anführungszeichen ist. Mit anderen Worten, Sie möchten so vergleichen, dass der Vergleich nicht nur nach Wert, sondern auch nach Datentyp erfolgt.
Dafür sollte anstelle des Operators ==
der Operator === verwendet werden. Im folgenden
Beispiel wird der Vergleich des Strings '3' und
der Zahl 3 falsch sein,
da die Variablen, obwohl sie im Wert gleich sind,
aber nicht im Typ übereinstimmen:
if ('3' === 3) {
console.log('+++');
} else {
console.log('---'); // das wird ausgeführt
}
Beim Vergleich zweier Strings '3'
hingegen wird die Bedingung wahr sein:
if ('3' === '3') {
console.log('+++'); // das wird ausgeführt
} else {
console.log('---');
}
Genauso wie beim Vergleich von Zahlen:
if (3 === 3) {
console.log('+++'); // das wird ausgeführt
} else {
console.log('---');
}
Der Unterschied zwischen dem Operator == und dem Operator
=== zeigt sich genau dann, wenn
die Werte gleich sind, aber die Datentypen unterschiedlich.
In allen anderen Fällen arbeiten diese Operatoren
gleich. Beispielsweise wird beim Vergleich unterschiedlicher
Zahlen natürlich '---' ausgegeben:
if (2 === 3) {
console.log('+++');
} else {
console.log('---'); // das wird ausgeführt
}
Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:
let test1 = '3';
let test2 = '3';
if (test1 == test2) {
console.log('+++');
} else {
console.log('---');
}
Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:
let test1 = '3';
let test2 = '3';
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}
Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:
let test1 = 3;
let test2 = '3';
if (test1 == test2) {
console.log('+++');
} else {
console.log('---');
}
Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:
let test1 = 3;
let test2 = '3';
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}
Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:
let test1 = 3;
let test2 = 3;
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}