Inequality (!=)

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 (!=) prüft, ob seine beiden Operanden nicht gleich sind und gibt ein boolesches Ergebnis zurück. Im Gegensatz zum strikten Ungleichheitsoperator versucht er, Operanden verschiedener Typen zu konvertieren und zu vergleichen.

Probieren Sie es aus

Syntax

js
x != y

Beschreibung

Der Ungleichheitsoperator prüft, ob seine Operanden nicht gleich sind. Es ist die Negation des Gleichheitsoperators, sodass die folgenden beiden Zeilen immer dasselbe Ergebnis liefern:

js
x != y;

!(x == y);

Einzelheiten zum Vergleichsalgorithmus finden Sie auf der Seite für den Gleichheitsoperator.

Wie der Gleichheitsoperator wird der Ungleichheitsoperator versuchen, Operanden verschiedener Typen zu konvertieren und zu vergleichen:

js
3 != "3"; // false

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

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

Beispiele

Vergleich ohne Typumwandlung

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

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

Vergleich mit Typumwandlung

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 Language Specification
# sec-equality-operators

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch