From 3de0442e6b266d967e9cdfde9590432b21b55e8c Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Mon, 21 Jun 2021 13:37:57 +0900 Subject: Web/JavaScript/Reference/Errors/D-G を更新 (#1162) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Web/JavaScript/Reference/Errors/D-E を更新 2021/06/09 時点の最新版に同期 * Web/JavaScript/Reference/Errors/Getter_only を更新 * Web/JavaScript/Reference/Errors/Getter_only を更新 --- .../reference/errors/equal_as_assign/index.html | 28 ++++++++++++---------- 1 file changed, 15 insertions(+), 13 deletions(-) (limited to 'files/ja/web/javascript/reference/errors/equal_as_assign') diff --git a/files/ja/web/javascript/reference/errors/equal_as_assign/index.html b/files/ja/web/javascript/reference/errors/equal_as_assign/index.html index e8fa400bf1..f123401d42 100644 --- a/files/ja/web/javascript/reference/errors/equal_as_assign/index.html +++ b/files/ja/web/javascript/reference/errors/equal_as_assign/index.html @@ -2,6 +2,7 @@ title: 'SyntaxError: test for equality (==) mistyped as assignment (=)?' slug: Web/JavaScript/Reference/Errors/Equal_as_assign tags: + - Error - Errors - JavaScript - SyntaxError @@ -9,46 +10,47 @@ translation_of: Web/JavaScript/Reference/Errors/Equal_as_assign ---
{{jsSidebar("Errors")}}
-

メッセージ

+

JavaScript の警告 "test for equality (==) mistyped as assignment (=)?" は、代入 (=) が通常は等価性 (==) の検査をすべき場面にあった場合に発生します。

-
Warning: SyntaxError: test for equality (==) mistyped as assignment (=)?
+

エラーメッセージ

+ +
Warning: SyntaxError: test for equality (==) mistyped as assignment (=)?
 

エラータイプ

-

strict モード でのみ、{{jsxref("SyntaxError")}} の警告が出ます。

+

(Firefox のみ) {{jsxref("SyntaxError")}} の警告であり、 javascript.options.strict の設定が true に設定されていた場合に発生します。

何がうまくいかなかったのか?

-

通常、等価テスト(==)が予想されるところで、代入 (=)が行われています。デバッグを行いやすくするために、(厳密な警告が可能になっている)JavaScript は、このパターンについて警告を出します。

+

代入 (=) が通常は等価性 (==) の検査をすべき場面にあった場合に発生します。デバッグを行いやすくするために、 JavaScript は (厳密な警告が有効な場合は) このパターンについて警告を出します。

-

条件式内での代入

+

条件式内での代入

-

if...else のような)条件式内で、ダン純名代入を行わないことをお勧めします。なぜならば、コードを一目見たときに、代入は等価と混同しやすいからです。たとえば、次のコードは使用しないでください:

+

(if...else のような) 条件式内では、単純な代入を行わないことをお勧めします。コードを一目見たときに、代入は等価と混同しやすいからです。たとえば、以下のコードは使用しないでください。

if (x = y) {
-  // 正しいことを実行する。
+  // 正しいことを実行する
 }
 
-

条件式内で代入をする必要がある場合、一般t京奈方法は代入の周りに追加の括弧を置くことです。たとえば:

+

条件式内で代入を行う必要がある場合、一般的には次のように、代入の周りに追加の括弧を置きます。

if ((x = y)) {
-  // 正しいことを実行する。
+  // 正しいことを実行する
 }
-

または、, 比較演算(たとえば、=====)を使用したいのかもしれません:

+

または、本当は比較演算子 (===== など) を使用しようとしたのかもしれません。

if (x == y) {
-  // 正しいことを実行する。
+  // 正しいことを実行する
 }

関連項目

-- cgit v1.2.3-54-g00ecf