为什么 JavaScript 中的 "1" + + "1" = "11" 但 "1" - - "1" = 2

Why is "1" + + "1" = "11" but "1" - - "1" = 2 in JavaScript

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

"1" + + "1" 

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

然而,当输入为

"1" - - "1"  

控制台回答了2

同样我试过

"1" - - "4" 

和控制台输出 5.

此外,

"1" - + "4"

给出输出 -3.

我理解其中的逻辑,但对这些运算符的工作原理一无所知。

如有任何解释,我们将不胜感激。

提前致谢。

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