从格式良好的字符串到数组

时间:2011-05-07 15:48:44

标签: javascript

在JavaScript中,将格式良好的字符串("4,5,7,2")转换为数组([4,5,7,2])的最佳方法是:

var _intStr="3,5,7,8"var _intArr=[3,5,7,8]

3 个答案:

答案 0 :(得分:5)

var _intArr = _intStr.split(",");

值得一提的是,这样的值_intStr = "5,,1"将生成带有三个项的数组,两个是预期的“5”和“1”,一个是空字符串。< / p>

答案 1 :(得分:1)

使用split函数按字符串或正则表达式进行拆分。

var arr = "1,2".split(",");

现在,如果你真的希望结果数组的元素是数字而不是字符串,你可以这样做:

var arr = [];
"1,2,3,4,5".replace(/(?:'[^]*')|(?:[^, ]+)/g, function(match) {
    if (match) {
        arr[arr.length] = parseInt(match, 10);
    }
});

答案 2 :(得分:1)

好的,谢谢大家的帮助。

我用这种方式总结了你的帮助:

String.prototype.toArrInt = function(){

   _intStr =       this.replace(/^,+|,+(,)|,+$/g, '$1').split(',')
   for(var i=0,_intArr=[];i<_intStr.length;_intArr.push(parseInt(_intStr[i++])));
   return _intArr;

}

_intStr = this.replace(/^,+|,+(,)|,+$/g, '$1').split(',') for(var i=0,_intArr=[];i<_intStr.length;_intArr.push(parseInt(_intStr[i++]))); return _intArr;

如果需要,请纠正我或改进我的最终代码。 谢谢,

安东尼奥