为什么++ var ++不是合法的Javascript表达式?

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错误.但那是为什么呢?:)

Nin*_*olz 7

它评估为

++(num++) 
Run Code Online (Sandbox Code Playgroud)

所以,表达

num++
Run Code Online (Sandbox Code Playgroud)

返回一个数字,而不是变量,因为它是一个原始值.添加的加号会引发异常,因为原始值不是变量,并且不能进行分配.