为什么JavaScript中的“1”+ +“1”=“11”而“1” - “1”= 2

时间:2018-06-08 19:53:46

标签: javascript operators unary-operator

今天,我的同事意识到了一件有趣的事情。基本上,他在谷歌浏览器中打开控制台(Ctrl + shift + I)并输入以下内容:

"1" + + "1" 

(请注意运营商之间的空格) 这给出了"11"的结果,这是字符串,我完全理解它。

但是,当输入

"1" - - "1"  

控制台回答2

同样我试过

"1" - - "4" 

和控制台输出5

另外,

"1" - + "4"

给出输出-3

我理解逻辑,但对这些操作符的工作没有任何线索。

任何解释都将不胜感激。

提前致谢。

1 个答案:

答案 0 :(得分:5)

-运算符对字符串没有任何意义,因此它将值转换为Number