このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
不等価演算子 (!=)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
不等価演算子 (!=) は、2 つのオペランドが等しくないことを検査し、論理値で結果を返します。厳密不等価演算子とは異なり、異なる型のオペランドを変換して比較を行おうとします。
In this article
試してみましょう
console.log(1 != 1);// 予想される結果: falseconsole.log("hello" != "hello");// 予想される結果: falseconsole.log("1" != 1);// 予想される結果: falseconsole.log(0 != false);// 予想される結果: false構文
js
x != y解説
不等価演算子は、そのオペランドが等しくないことを検査します。これは等価演算子の逆に当たるので、以下の 2 行は常に同じ結果になります。
js
x != y;!(x == y);比較アルゴリズムの詳細については、等価演算子のページを参照して下さい。
等価演算子と同様に、不等価演算子は異なる型のオペランドを変換して比較しようとします。
js
3 != "3"; // falseこれを防止し、異なる型が異なる結果を返すようにするには、代わりに厳密不等価演算子を使用してください。
js
3 !== "3"; // true例
>型変換がない場合の比較
js
1 != 2; // true"hello" != "hola"; // true1 != 1; // false"hello" != "hello"; // false型変換がある場合の比較
js
"1" != 1; // false1 != "1"; // false0 != false; // false0 != null; // true0 != undefined; // true0 != !!null; // false (論理 NOT 演算子を参照)0 != !!undefined; // false (論理 NOT 演算子を参照)null != undefined; // falseconst number1 = new Number(3);const number2 = new Number(3);number1 != 3; // falsenumber1 != number2; // trueオブジェクトの比較
js
const object1 = { key: "value",};const object2 = { key: "value",};console.log(object1 != object2); // trueconsole.log(object1 != object1); // false仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-equality-operators> |