javascript 中的 a + 1 和 a - 1 +2 有什么区别
What is the difference between a + 1 and a - 1 +2 in javascript
我拿到了一个项目,发现了一个很神秘的项目。
我在 javascript 代码中找到了 a - 1 + 2
,我认为它将与 a + 1
相同并替换为它。
但它给出了错误的答案。
当
a = 1 => a -1 +2 = 2
=> a + 1 = 11
谁能描述一下这个问题?
a
是一个字符串。因为 + 可以表示加法 或字符串连接 ,这就是您在此处看到的内容。在 JavaScript 中,如果您至少有一个加数是字符串,则两个操作数都被强制转换为字符串并连接起来。因此 "1" + 1
是 "11"
。但是在JavaScript中,-只有一个意思,减法。因此它将两个操作数都转换为数字并相减。减法没有连接,因此有所不同。
在添加之前将 a
强制转换为整数:
+a + 1
在这里,一元 +
隐式地将 a
转换为数字。
我拿到了一个项目,发现了一个很神秘的项目。
我在 javascript 代码中找到了 a - 1 + 2
,我认为它将与 a + 1
相同并替换为它。
但它给出了错误的答案。
当
a = 1 => a -1 +2 = 2
=> a + 1 = 11
谁能描述一下这个问题?
a
是一个字符串。因为 + 可以表示加法 或字符串连接 ,这就是您在此处看到的内容。在 JavaScript 中,如果您至少有一个加数是字符串,则两个操作数都被强制转换为字符串并连接起来。因此 "1" + 1
是 "11"
。但是在JavaScript中,-只有一个意思,减法。因此它将两个操作数都转换为数字并相减。减法没有连接,因此有所不同。
在添加之前将 a
强制转换为整数:
+a + 1
在这里,一元 +
隐式地将 a
转换为数字。