拆分一个值的字符串数组失败

时间:2010-09-11 12:15:06

标签: javascript

我有这个:

var ID= "12,32,23,78";

var i = ID.split(',');

如果我这样做那么它工作正常,但当它只有一个像12这样的值时,它就会给我0.我怎么能解决这个问题?如果我只需要检查一个值,你怎么做?

5 个答案:

答案 0 :(得分:6)

如果变量“ID”是数字 12,那么当然它不起作用 - .split()方法是字符串的方法,而不是数字。试试这个:

var ID = /* whatever */;

var i = (ID + '').split(',');

答案 1 :(得分:0)

var i;
if (ID.indexOf(",") != -1)
    i = ID.split(',');
else
    i = ID;

答案 2 :(得分:0)

与您发布的完全一样,除非您使用JavaScript .indexOf()字符串方法检查是否存在分隔符。

答案 3 :(得分:0)

String.prototype.mySplit = function(sep) {
    return (this.indexOf(sep) != -1) ? this.split(sep) : [this];
};

示例:

//var ID= '12,32,23,78';
var ID= '12';

//Update
if (typeof(ID)=='number') ID += '';

var i = ID.mySplit(',');

alert(i[0]);

答案 4 :(得分:0)

    var ID= "12,32,23,78";

    var i = ID.split(',');

    will return [12,32,23,78]

    var ID= "12";

    var i = ID.split(',');

    will return [12] -- this is also an array

然而你可以这样做

    var ID= "12";

    var i = ID.split(',') || ID;