JavaScript和JavaScript的新东西是有趣的。我被展示了这个例子:在Javascript中处理字符串和整数的不同方法
"37" - 7 // "30"
"37" + 7 // "337"
这是一个练习来展示Javascript如何转换和处理字符串和整数。我不明白的是为什么这两个陈述的处理方式不同。第一条语句将37转换为整数并减去7,剩下30(如果我将其更改为6,则它变为31)。但是,在第二个语句中,它将它视为一个字符串,并将第二个7连接到该字符串的末尾。在文本
var number = "37" - 7
console.log(number);
,将其保存为一个.js文件,并用Node.js的执行它:
出于测试目的,我写这
如果没有简单的方法来解释这一点,我只会将这个问题归咎于JS所具有的奇怪行为。过于复杂的答案会浪费在像我这样的新手上。
预先感谢您。
不能从字符串中减去,所以JavaScript的对待 - 签署为具有数字参数。然而,你可以添加字符串,所以如果左边有一个字符串,那么JavaScript会将右边的arg转换为字符串。这不是奇怪的行为,它是预期的。 – 2015-01-09 22:17:09
'+'用于加法和连接,而'-'只是减号。在你的情况下,你用'+'连接字符串。 – j08691 2015-01-09 22:17:13