我正在比较两个分支,代码存在分歧,+ operator
,在我看来它没有任何区别因为它的推动。
有什么不同吗?
在
if (numberPattern.test(val)) {
var getNumbers = val.match(numberPattern);
for (i = 0; i < getNumbers.length; i++) {
valores.push(getNumbers[i])
}
}
在
if (numberPattern.test(val)) {
var getNumbers = val.match(numberPattern);
for (i = 0; i < getNumbers.length; i++) {
valores.push(+getNumbers[i])
}
}
答案 0 :(得分:7)
它正在将其转换为Number
,其他情况是将其保留为字符串。
答案 1 :(得分:2)
+
实际上会将getNumbers[i]
更改为number
类型。 +
(一元运算符)实际上用于将其转换为number
。
尝试运行此代码:
var s = "1"; //String
var s1 = +s; //String changed to a number now
console.log(typeof s1);
您会看到s1
的类型为number
。