From b492e1f57a059209ba801270375697e917f365f8 Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Mon, 27 Sep 2021 23:03:04 +0900 Subject: JavaScript の等価演算子関係の文書を更新 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 2021/07/21 時点の英語版に同期 --- .../reference/operators/inequality/index.md | 100 +++++++++++---------- 1 file changed, 51 insertions(+), 49 deletions(-) (limited to 'files/ja/web/javascript/reference/operators/inequality') diff --git a/files/ja/web/javascript/reference/operators/inequality/index.md b/files/ja/web/javascript/reference/operators/inequality/index.md index aab622a884..29e40f7b29 100644 --- a/files/ja/web/javascript/reference/operators/inequality/index.md +++ b/files/ja/web/javascript/reference/operators/inequality/index.md @@ -3,96 +3,98 @@ title: 不等価 (!=) slug: Web/JavaScript/Reference/Operators/Inequality tags: - JavaScript - - Language feature - - Operator + - 言語機能 + - 演算子 - Reference +browser-compat: javascript.operators.inequality translation_of: Web/JavaScript/Reference/Operators/Inequality --- -
{{jsSidebar("Operators")}}
+{{jsSidebar("Operators")}} -

不等価演算子 (!=) は、2つのオペランドが等しくないかをチェックし、ブール値の結果を返します。厳密不等価演算子とは異なり、異なる型のオペランドを変換して比較を行おうとします。

+不等価演算子 (`!=`) は、2 つのオペランドが等しくないことを検査し、論理値で結果を返します。[厳密不等価](/ja/docs/Web/JavaScript/Reference/Operators/Strict_inequality)演算子とは異なり、異なる型のオペランドを変換して比較を行おうとします。 -
{{EmbedInteractiveExample("pages/js/expressions-inequality.html")}}
+{{EmbedInteractiveExample("pages/js/expressions-inequality.html")}} +## 構文 +```js +x != y +``` -

構文

+## 解説 -
x != y
+不等価演算子は、そのオペランドが等しくないことを検査します。これは[等価](/ja/docs/Web/JavaScript/Reference/Operators/Equality)演算子の逆に当たるので、以下の 2 行は常に同じ結果になります。 -

説明

+```js +x != y -

不等価演算子は、そのオペランドが等しくないかどうかをチェックします。これは等価演算子の否定なので、次の2行は常に同じ結果になります。

+!(x == y) +``` -
x != y
+比較アルゴリズムの詳細については、[等価](/ja/docs/Web/JavaScript/Reference/Operators/Equality)演算子のページを参照して下さい。
 
-!(x == y)
+等価演算子と同様に、不等価演算子は異なる型のオペランドを変換して比較しようとします。 -

比較アルゴリズムの詳細については、等価演算子のページを参照して下さい。

+```js +3 != "3"; // false +``` -

等価演算子と同様に、不等価演算子は異なる型のオペランドを変換して比較しようとします。

+これを防止し、異なる型が異なる結果を返すようにするには、代わりに[厳密不等価](/ja/docs/Web/JavaScript/Reference/Operators/Strict_inequality)演算子を使用してください。 -
3 != "3"; // false
+```js +3 !== "3"; // true +``` -

これを防止し、異なる型が異なる結果を返すようにするには、代わりに厳密不等価演算子を使用します:

+## 例 -
3 !== "3"; // true
+### 型変換がない場合の比較 -

- -

型変換なしの比較

- -
1 != 2;              // true
+```js
+1 != 2;              // true
 "hello" != "hola";   // true
 
 1 != 1;              // false
-"hello" != "hello";  // false
+"hello" != "hello"; // false +``` -

型変換ありの比較

+### 型変換がある場合の比較 -
"1" !=  1;            // false
+```js
+"1" !=  1;            // false
 1 != "1";             // false
 0 != false;           // false
 0 != null;            // true
 0 != undefined;       // true
+0 != !!null;          // false (論理 NOT 演算子を参照)
+0 != !!undefined;     // false (論理 NOT 演算子を参照)
 null != undefined;    // false
 
 const number1 = new Number(3);
 const number2 = new Number(3);
 number1 != 3;         // false
-number1 != number2;   // true
+number1 != number2; // true +``` -

オブジェクトの比較

+### オブジェクトの比較 -
const object1 = {"key": "value"}
+```js
+const object1 = {"key": "value"}
 const object2 = {"key": "value"};
 
 object1 != object2 // true
-object2 != object2 // false
- -

仕様

- - - - - - - - - - -
仕様
{{SpecName('ESDraft', '#sec-equality-operators', 'Equality operators')}}
+object2 != object2 // false +``` -

ブラウザー実装状況

+## 仕様書 +{{Specifications}} +## ブラウザーの互換性 -

{{Compat("javascript.operators.inequality")}}

+{{Compat}} -

関連項目

+## 関連情報 - +- [等価演算子](/ja/docs/Web/JavaScript/Reference/Operators/Equality) +- [厳密等価演算子](/ja/docs/Web/JavaScript/Reference/Operators/Strict_equality) +- [厳密不等価演算子](/ja/docs/Web/JavaScript/Reference/Operators/Strict_inequality) -- cgit v1.2.3-54-g00ecf