Javascript 为什么';t array.push()在循环对象时是否起作用?
我正在用JavaScript做一个简单的数独解算器,向数组中添加新值有一个问题。我的脚本在for..in循环中生成随机长度数组。我用Chrome调试器测试了这个脚本,在那里我看到它循环正确的计数。我是否遗漏了JS对象的一些要点,或者.push()的方法做这种事情是错误的Javascript 为什么';t array.push()在循环对象时是否起作用?,javascript,arrays,array-push,Javascript,Arrays,Array Push,我正在用JavaScript做一个简单的数独解算器,向数组中添加新值有一个问题。我的脚本在for..in循环中生成随机长度数组。我用Chrome调试器测试了这个脚本,在那里我看到它循环正确的计数。我是否遗漏了JS对象的一些要点,或者.push()的方法做这种事情是错误的 this.areaSize = gridSideSize * gridSideSize; //On progress -data structures this.structures = { rows: new A
this.areaSize = gridSideSize * gridSideSize;
//On progress -data structures
this.structures =
{
rows: new Array(),
columns: new Array(),
parents: new Array()
};
//Fill the data structures with the area object
for(var struct in this.structures)
{
for(var a = 0; a < this.areaSize; a++)
{
var tmp = new PartialArea(this.areaSize);
this.structures[struct].push(tmp);
}
console.log(struct.length);
}
this.areaSize=gridSideSize*gridSideSize;
//关于进展——数据结构
该结构=
{
行:新数组(),
列:新数组(),
父项:新数组()
};
//用区域对象填充数据结构
for(此.structures中的var struct)
{
对于(var a=0;a
Console告诉我,第一个数组的长度为4项,第二个和第三个数组的长度为7项。
struct
是属性名行
(长度为4的字符串)、列
(7)和父项
(7)
记录
this.structures[struct].length将给出预期结果。只需记录struct
而不是struct.length
。你会立即注意到你的错误。