Javascript 这个棘手的js作业是如何工作的?

Javascript 这个棘手的js作业是如何工作的?,javascript,Javascript,这实际上是如何工作的? 我将感谢任何帮助 没有你想象的那么深。:-)就是这个, let at = 1; console.log(at + - + + + - ++at); 系列-++-只是一组一元-和+。+不做任何事情(在这种情况下,因为它们是在对已经是一个数字的++at的结果进行操作),并且这两个-相互抵消 因此,看看at+++at:二进制++(加法)计算其左侧操作数,然后计算其右侧操作数,然后将它们相加(当两者都是数字时)。左侧操作数为at,其计算结果为1;右边是++at,它将at增加

这实际上是如何工作的?
我将感谢任何帮助

没有你想象的那么深。:-)就是这个,

 let at = 1;
 console.log(at + - + + + - ++at);
系列
-++-
只是一组一元
-
+
+
不做任何事情(在这种情况下,因为它们是在对已经是一个数字的
++at
的结果进行操作),并且这两个
-
相互抵消

因此,看看
at+++at
:二进制
++
(加法)计算其左侧操作数,然后计算其右侧操作数,然后将它们相加(当两者都是数字时)。左侧操作数为
at
,其计算结果为
1
;右边是
++at
,它将
at
增加到
2
,并将新值(
2
)作为其结果。所以,
1+2
=
3

通过删除可选的空白,只留下区分
+
+
所需的内容,我们可以使它更加混乱:

console.log(at + ++at);
……但我们不会对后面的人那样做,是吗?:-)



如果您想查看表达式如何分解的详细信息,Esprima人员会提供一个方便的页面,显示粘贴内容的解析树:

++
++
之间存在差异。只是出于好奇,控制台日志实际上输出了什么?这是一个有趣的问题,其结果可能对下一个人的学习很有价值。非常感谢您提供的精彩资源和您的详细解释=)
console.log(at+-+ + +-++at);