Javascript 数组读取,然后停止-错误:无法设置属性';0';未定义的
我试图将csv字符串读入2D数组,由于某种原因,当它到达第一个循环的第二次迭代时,它会停止 以下是密码和代码:Javascript 数组读取,然后停止-错误:无法设置属性';0';未定义的,javascript,arrays,Javascript,Arrays,我试图将csv字符串读入2D数组,由于某种原因,当它到达第一个循环的第二次迭代时,它会停止 以下是密码和代码: $(document).ready(function(){ var lay = [[]]; document.getElementById("result").innerHTML = value; bits = value.split(','); console.log(bits.length); elm = bits.length/4; coun
$(document).ready(function(){
var lay = [[]];
document.getElementById("result").innerHTML = value;
bits = value.split(',');
console.log(bits.length);
elm = bits.length/4;
count=0;
console.log(bits[6]); //here it reads but won't assign to the array
for (i=0; i<=elm; i++)
{lay[i]=[];
console.log('i:'+i);
for (j=0; j<=4; j++)
{ console.log('j:' + j);
console.log('count:' + count);;
lay[i][j] == bits[count];
count = count + 1;
console.log('bit value:' + bits[count]);
}
}
console.log(lay[0][0]);
});
$(文档).ready(函数(){
var-lay=[[]];
document.getElementById(“结果”).innerHTML=value;
位=值。拆分(',');
console.log(位长度);
elm=位。长度/4;
计数=0;
console.log(位[6]);//这里它读取但不会分配给数组
对于(i=0;i我认为u'r lay数组有问题。
这个元素成立了吗?lay[i][j]我想我解决了它
我做了两个改变:
在循环外部声明了“lay”值
var lay = Array();
并在第一个循环开始时进行了更新
lay[i] = Array();
现在它运行时没有错误。你怎么知道lay
或lay[i]
没有定义?实际上我很确定lay[1]
没有定义,使得lay[1][0]
失败。数组中没有数据,所以我猜它是未定义的。如果我告诉它应该是什么值,那又有什么关系呢?这样看吧。你不会认为这会起作用吧?var x;x[0]=5;
我声明了lay=[[]];对于2D数组来说,这还不够吗?我更新了小提琴:它显示数组中的前几个值。如果你说的是真的,那么为什么它会显示lay[0][0]…lay[0][3]?不。这只声明了lay[0],而不是lay[1]。我在查看代码时发现你已经解决了它。哦。。。