-2

我在这个问题中看到_=$=+[],++_+''+$为什么 ++[[]][+[]]+[+[]] 返回字符串“10”?. (http://jsfiddle.net/tVMqM/)。10

有人可以解释一下为什么吗?

4

2 回答 2

7

解析为 1(真)_=$=+[],++_

将其转换为字符串+''

将 0 添加到字符串+$

编辑:第一部分的更多细节......

创建变量 _ 和 $_=$=

设置变量等于 0+[]

增量_变量++_

于 2012-06-11T12:58:22.317 回答
4

这里有一个很好的解释。HackerNews 在这里对这个话题进行了一些精彩的讨论。

需要注意的是,这不是整数 10,而是字符串“10”。

于 2012-06-11T12:58:26.543 回答