使用"有什么不同吗? +"操作员推?

时间:2015-05-25 12:56:34

标签: javascript string-concatenation

我正在比较两个分支,代码存在分歧,+ 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])
            }
        }

2 个答案:

答案 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