[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Operators/Strict_equality [Back]  [Original]

Strikte Gleichheit (===) - JavaScript | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

Strikte Gleichheit (===)

Baseline Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.

Der strikte Gleichheitsoperator (===) berprft, ob seine beiden Operanden gleich sind, und gibt ein boolesches Ergebnis zurck. Im Gegensatz zum Gleichheitsoperator betrachtet der strikte Gleichheitsoperator Operanden verschiedener Typen immer als unterschiedlich.

In diesem Artikel

Probieren Sie es aus

console.log(1 === 1);
// Expected output: true

console.log("hello" === "hello");
// Expected output: true

console.log("1" === 1);
// Expected output: false

console.log(0 === false);
// Expected output: false

Syntax

js
x === y

Beschreibung

Die strikten Gleichheitsoperatoren (=== und !==) bieten die IsStrictlyEqual Semantik.

  • Wenn die Operanden unterschiedliche Typen haben, wird false zurckgegeben.
  • Wenn beide Operanden Objekte sind, wird true nur zurckgegeben, wenn sie auf dasselbe Objekt verweisen.
  • Wenn beide Operanden null sind oder beide Operanden undefined sind, wird true zurckgegeben.
  • Wenn ein Operand NaN ist, wird false zurckgegeben.
  • Andernfalls werden die Werte der beiden Operanden verglichen:
    • Zahlen mssen identische numerische Werte haben. +0 und -0 werden als derselbe Wert betrachtet.
    • Zeichenfolgen mssen dieselben Zeichen in derselben Reihenfolge haben.
    • Booleans mssen beide true oder beide false sein.

Der bemerkenswerteste Unterschied zwischen diesem Operator und dem Gleichheitsoperator (==) ist, dass der == Operator versucht, die Operanden vor dem Vergleich in denselben Typ zu konvertieren, wenn sie unterschiedliche Typen haben.

Beispiele

Vergleich von Operanden desselben Typs

js
"hello" === "hello"; // true
"hello" === "hola"; // false

3 === 3; // true
3 === 4; // false

true === true; // true
true === false; // false

null === null; // true

Vergleich von Operanden verschiedener Typen

js
"3" === 3; // false
true === 1; // false
null === undefined; // false
3 === new Number(3); // false

Vergleich von Objekten

js
const object1 = {
  key: "value",
};

const object2 = {
  key: "value",
};

console.log(object1 === object2); // false
console.log(object1 === object1); // true

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-equality-operators

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page