我有一个字符串,我想拆分它并将其推入变量。
我试图在变量结果中推送数组值
这是我试过的。
var region = "Rajkot,Jamnagar,Surat";
var result;
var array = region.split(',');
for (var i=0; i<array.length; i++ )
{
alert(array[i]);
result.push(array[i]);
}
但它的返回错误result.push不是一个函数。 如何推动变量的价值 我试图提醒这个结果变量。 请解决我的疑问 感谢。
答案 0 :(得分:5)
您应该将result
变量初始化为
var result = [];
所以你的最终代码是:
var region = "Rajkot,Jamnagar,Surat";
var result = [];
var array = region.split(',');
for (var i=0; i<array.length; i++ ){
alert(array[i]);
result.push(array[i]);
}
但split()
已经返回一个数组,因此您的for
可能是不必要的,除非您希望在将数组元素添加到结果之前对数组元素执行业务逻辑。
答案 1 :(得分:3)
我认为您需要将结果初始化为数组
即var result = [];
答案 2 :(得分:2)
为什么要推动阵列? split
返回一个数组。
var region = "Rajkot,Jamnagar,Surat";
var result = region.split(','); // This is already an array
for (var i in result) {
alert(result[i]);
}
请参阅DEMO。
答案 3 :(得分:1)
为了使用Array
原型中的函数,您需要实际拥有一个数组。现在,您有一个未定义的result
变量(因此不能支持push
)。
为了使其工作,您需要确保变量的类型实际上是一个数组。这可以这样做:
var result = [];
(如果你没有使用函数,总是记得初始化数组)