繁体   English   中英

逗号分隔数字的字符串到javascript中的整数数组

[英]String with Comma separated numbers to array of integer in javascript

我正在使用逗号分隔数字将String转换为整数数组,如

 var string = "1,2,3,4"; 
 var array = string.replace(/, +/g, ",").split(",").map(Number); 

它返回array = [1,2,3,4];

但当 ,

 var string = ""; 
 var array = string.replace(/, +/g, ",").split(",").map(Number); 

它返回array = [0];

我期待它返回array = []; 谁能说出为什么会这样。

我会推荐这个:

var array;
if (string.length === 0) {
    array = new Array();
} else {
    array = string.replace(/, +/g, ",").split(",").map(Number);
}

string.replace(/, +/g, ",").split(",")返回一个包含一个项目的数组 - 一个空字符串。 在javascript中,转换为数字时为空字符串为0.看你自己

Number(""); // returns (int)0

要删除逗号后面的空格,可以在split函数本身内使用正则表达式。

array = string.split(/\s*,\s*/).map(Number);

我希望它会有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM