javascript エラー「Uncaught ReferenceError: Invalid left-hand side expression in prefix operation」の解決方法
- 作成日 2022.10.26
- javascript
- javascript
javascriptで、エラー「Uncaught TypeError: xxx.charAt is not a function」が発生した場合の原因と解決方法を記述してます。基本的に変数を参照していないものに対してインクリメントやデクリメントを実行すると発生します。
環境
- OS windows11 pro 64bit
- ブラウザ chrome106.0.5249.103
エラー内容
以下の、インクリメントを行うコードで発生。
let num = '1';
++(Number(num));
エラーメッセージ
Uncaught ReferenceError: Invalid left-hand side expression in prefix operation
画像
firefox105の場合でも同じエラーが発生します。
Uncaught ReferenceError: cannot assign to function call
画像
safari15.5では、以下のエラーとなります。
ReferenceError: Prefix ++ operator applied to value that is not a reference.
画像
原因
変数を参照していないものに対してインクリメントを行っているため。例えば以下のようなパターンも似たようなエラーが発生します。
++1;
// Uncaught SyntaxError: Invalid left-hand side expression in prefix operation
解決方法
変数を参照する形でインクリメントすることで解決します。
let num = Number('1');
++num;
-
前の記事
javascript set内の最大値・最小値を取得する 2022.10.26
-
次の記事
PyCharm デバックを実行するショートカットキー 2022.10.26
コメントを書く