[英]why is this javascript array undefined?
我有以下代码,该代码尝试生成随机数的二维数组:
var block_size = 32;
var can_width = can.width;
var color_depth = 12;
var passes = can_width / block_size;
var map_store = new Array(passes);
for(i=0;i<passes;i++) {
for(j=0;j<passes;j++) {
map_store[i] = new Array(passes);
color = Math.random() * color_depth;
map_store[i][j] = Math.round(color);
}
}
如果我将console.log
语句放入循环中,那么这似乎很好用,但是如果我尝试在循环外访问map_store
数组,这似乎很好。 它的所有元素都是不确定的。 为什么是这样?
map_store[i] = new Array(passes);
应该高于2nd for
循环。 您正在清除以前的j
值。
for(i=0;i<passes;i++) {
map_store[i] = new Array(passes); // <--
for(j=0;j<passes;j++) {
color = Math.random() * color_depth;
map_store[i][j] = Math.round(color);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.