javascript 中以逗号分隔的数字到整数数组的字符串
String with Comma separated numbers to array of integer in javascript
我正在将以逗号分隔的数字字符串转换为整数数组,例如,
var string = "1,2,3,4";
var array = string.replace(/, +/g, ",").split(",").map(Number);
它returns array = [1,2,3,4];
但是当 ,
var string = "";
var array = string.replace(/, +/g, ",").split(",").map(Number);
它returns array = [0];
我期待它 return array = [];
谁能说说为什么会这样。
string.replace(/, +/g, ",").split(",")
returns 一个包含一项的数组 - 一个空字符串。 javascript中,空字符串转为数字为0,自己看
Number(""); // returns (int)0
我会推荐这个:
var array;
if (string.length === 0) {
array = new Array();
} else {
array = string.replace(/, +/g, ",").split(",").map(Number);
}
要删除逗号后的空格,您可以在拆分函数本身内部使用正则表达式。
array = string.split(/\s*,\s*/).map(Number);
希望对你有所帮助
我正在将以逗号分隔的数字字符串转换为整数数组,例如,
var string = "1,2,3,4";
var array = string.replace(/, +/g, ",").split(",").map(Number);
它returns array = [1,2,3,4];
但是当 ,
var string = "";
var array = string.replace(/, +/g, ",").split(",").map(Number);
它returns array = [0];
我期待它 return array = [];
谁能说说为什么会这样。
string.replace(/, +/g, ",").split(",")
returns 一个包含一项的数组 - 一个空字符串。 javascript中,空字符串转为数字为0,自己看
Number(""); // returns (int)0
我会推荐这个:
var array;
if (string.length === 0) {
array = new Array();
} else {
array = string.replace(/, +/g, ",").split(",").map(Number);
}
要删除逗号后的空格,您可以在拆分函数本身内部使用正则表达式。
array = string.split(/\s*,\s*/).map(Number);
希望对你有所帮助