以下の様なJavaScriptのコードを書きますと、
if(a == 1 && b = 1) { console.log("ok"); }
以下の様なエラーが表示されます。
Uncaught SyntaxError: Invalid left-hand side in assignment
日本語訳:代入の左側が無効です
エラーになる理由は正確には分かりませんが、b = 1が比較演算子ではなく代入演算子になっているからのようです。
こういう書き方は文法的にできないわけはない気はするのですが(代入しながらbを評価するのはありだと思う)、
とりあえずエラーになってしまうので比較演算子をしっかり書きましょう。
コメント