Ungleichheit (!=)

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Der Ungleichheitsoperator (!=) überprüft, ob seine zwei Operanden nicht gleich sind, und liefert ein Boolean-Ergebnis zurück. Im Gegensatz zum strikten Ungleichheitsoperator versucht er, Operanden unterschiedlicher Typen zu konvertieren und zu vergleichen.

Probieren Sie es aus

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

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

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

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

Syntax

js
x != y

Beschreibung

Der Ungleichheitsoperator überprüft, ob seine Operanden nicht gleich sind. Er ist die Negation des Gleichheitsoperators, daher werden die folgenden zwei Zeilen immer dasselbe Ergebnis liefern:

js
x != y;

!(x == y);

Details zum Vergleichsalgorithmus finden Sie auf der Seite zum Gleichheitsoperator.

Wie der Gleichheitsoperator versucht der Ungleichheitsoperator, Operanden unterschiedlicher Typen zu konvertieren und zu vergleichen:

js
3 != "3"; // false

Um dies zu verhindern und sicherzustellen, dass unterschiedliche Typen als unterschiedlich betrachtet werden, verwenden Sie stattdessen den strikten Ungleichheitsoperator:

js
3 !== "3"; // true

Beispiele

Vergleich ohne Typkonvertierung

js
1 != 2; // true
"hello" != "hola"; // true

1 != 1; // false
"hello" != "hello"; // false

Vergleich mit Typkonvertierung

js
"1" != 1; // false
1 != "1"; // false
0 != false; // false
0 != null; // true
0 != undefined; // true
0 != !!null; // false, look at Logical NOT operator
0 != !!undefined; // false, look at Logical NOT operator
null != undefined; // false

const number1 = new Number(3);
const number2 = new Number(3);
number1 != 3; // false
number1 != number2; // true

Vergleich von Objekten

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

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

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

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-equality-operators

Browser-Kompatibilität

Siehe auch