来自数字字符串的Javascript数组
我正在尝试使用javascript中的数组。考虑下面的代码:来自数字字符串的Javascript数组,javascript,Javascript,我正在尝试使用javascript中的数组。考虑下面的代码: var visList = '1234,5678,9' var visListArray = new Array(visList); for (i = 0; i <= visListArray.length - 1; i++) { alert(visListArray[i]); } var visList='12345678,9' var vislistary=新数组(visList); 对于(i=0;i
var visList = '1234,5678,9'
var visListArray = new Array(visList);
for (i = 0; i <= visListArray.length - 1; i++)
{
alert(visListArray[i]);
}
var visList='12345678,9'
var vislistary=新数组(visList);
对于(i=0;i通过调用字符串上的split()
创建数组:
var visList = '1234,5678,9'
var visListArray = visList.split(",");
您不能将看起来像代码的字符串替换为实际代码。虽然这样做可行:
var visListArray = new Array(1234,5678,9);
您的没有,因为数组构造函数没有将字符串解释为3个逗号分隔的参数,所以它被解释为一个字符串
编辑:请注意,对字符串调用split()
会产生一个字符串数组。如果需要一个数字数组,则需要迭代该数组,将每个字符串转换为一个数字。一种方便的方法是使用:
请参阅有关在旧浏览器中使用map()
的说明。因为它是一个字符串,请尝试以下操作:
var visList = '1234,5678,9'
var visListArray = [].concat(visList.split(','));
for (i = 0; i <= visListArray.length - 1; i++) {
alert(visListArray[i]);
}
var visList='12345678,9'
var vislistary=[].concat(visList.split(',');
对于(i=0;i您必须使用
var visList='12345678,9'
var vislistary=visList.split(“,”);
对于(i=0;i要将符号分隔列表转换为数组,可以使用split(symbol):
var list=“1221232345547667”。拆分(“,”;
for(var i=0,il=list.length;i
要使用起始值初始化数组,@Shlomi-对concat的调用是完全冗余的。OP不必使用split,比如var s='12345678,9'。match(/\d+/g);
也可以使用。
var visList = '1234,5678,9'
var visListArray = [].concat(visList.split(','));
for (i = 0; i <= visListArray.length - 1; i++) {
alert(visListArray[i]);
}
var visList = '1234,5678,9'
var visListArray = visList.split(",");
for (i = 0; i <= visListArray.length - 1; i++)
{
alert(visListArray[i]);
}
var list = "1221,2323,4554,7667".split(",");
for (var i = 0, il = list.length; i < il; i++) {
alert( +list[i] ); // a casting from string to number
}