← エラー辞典に戻る

JavaScript

🚨 SyntaxError: Invalid left-hand side in assignment

代入できないものに代入しようとしている

😰 こんな症状

代入文を書くと「Invalid left-hand side in assignment」と表示される。=と===の混同で起きやすいよ。

🔍 原因

if(a = 1)のように比較演算子(===)を代入演算子(=)と間違えている、または5 = xのようにリテラル値に代入しようとしているよ。代入の左辺(=の左側)には変数や配列要素など「代入可能なもの」しか書けないんだ。

❌ エラーが起きるコード

5 = x;
// 左辺が値

✅ 直し方

1. 比較には===を使う。=は代入、===は比較。if(a === 1)が正しい。 2. 代入の左辺が変数になっているか確認する。 3. ESLintのno-cond-assignルールで条件式内の代入を検出できる。

✅ 修正後のコード

const x = 5;

この解決法は役立ちましたか?

🔗 関連するエラー

🔗 別カテゴリの関連エラー

📖 この問題を学べるレッスン

JavaScriptコースで基礎から学ぶ →

📝 関連ブログ記事

📖 関連する用語

🚀 JavaScriptコースで基礎を学ぼう!

エラーの原因を根本から理解するには、基礎を体系的に学ぶのが近道です。完全無料・登録不要。

JavaScriptコースを始める →

❓ 関連するQ&A