将逗号分隔的字符转换为逗号分隔的整数

时间:2014-02-04 17:27:46

标签: javascript jquery

我想在jQuery / JavaScript中将字符串"1,2,3,4"转换为1,2,3,4。我该怎么转换呢?我可以使用任何内置函数吗?

3 个答案:

答案 0 :(得分:4)

听起来你正在寻找String#split

var a = "1,2,3,4".split(",");

a现在是一个包含一位数字符串的数组。如果你想要数字,你必须转换它们:

var a = "1,2,3,4".split(",").map(Number);

使用split创建数组,然后Array#map通过Number函数传递每个条目,这将把它们转换为数字。或者,如果你想绝对确定使用基数10(例如,“0x10”最终不是16):

var a = "1,2,3,4".split(",").map(function(entry) {
    return parseInt(entry, 10);
});

请注意Array#map来自ES5。现代浏览器有它,旧的可能需要垫片。如果你需要支持它们,搜索“ES5 shim”或“Array map polyfill”,你会找到一个。请注意,有些质量高于其他品质。

答案 1 :(得分:4)

JSON.parse让事情变得简单。

var str = "1,2,3,4";
var numbers = JSON.parse("[" + str + "]");
console.log(numbers);

答案 2 :(得分:0)

var str = "1,2,3,4";
var output = str.match(/[^\s,]/g);
for (var i = 0; i < output.length; i++) {
    output[i] = parseInt(output[i]);
}