JavaScriptを学んでいますが、現在はオペレータの章にあります。私はなぜ++true
がJavaScriptの無効な表現であり、+true
が問題ないのだろうと思っていました。私は違いは、++
(または--
)演算子がJavaScriptで動作するためです。 ++
が適用されたときに何が起こるか知りたいだけです。++または - をJavaScriptのリテラルに直接適用できないのはなぜですか?
console.log(+true); // 1, fine
console.log(++true); // SyntaxError
true
が暗黙数に変換し、それが+
の場合にあるようにインクリメントされない理由。
値が変数に格納されると、++
は予想されるジョブを実行しますが、リテラルで直接使用することはできません。
「左手側」と「右手側」の式を調べてください。いくつかの光を放つかもしれない。長文で言えば、 '1 = 1 + 1'というコードの妥当なものは何ですか? – CollinD
'true'は変数ではなく、' + 'は[unary plus]です(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators#Unary_plus) –