Aur*_*mas 1 javascript expression
我在这里阅读有关Javascript运算符优先级的内容并且好奇为什么我不能写这样的东西:
let num = 1;
++num++;
Run Code Online (Sandbox Code Playgroud)
哪个得到Uncaught ReferenceError: Invalid left-hand side expression in prefix operation错误.但那是为什么呢?:)
它评估为
++(num++)
Run Code Online (Sandbox Code Playgroud)
所以,表达
num++
Run Code Online (Sandbox Code Playgroud)
返回一个数字,而不是变量,因为它是一个原始值.添加的加号会引发异常,因为原始值不是变量,并且不能进行分配.