为什么我的iObject在javascript中不会变形?

为什么我的iObject在javascript中不会变形?,javascript,object,Javascript,Object,我的javascript有问题。当我点击按钮时,我的div不会变形。 我想这应该是对的,有人知道如何帮助我吗 代码如下: var-divinfo={ “部门”:[{ “h”:“100”, “w”:“100” }, { “h”:“10”, “w”:“50” }, { “h”:“100”, “w”:“400” } ] }; //警报(divinfo.div[1].h); 函数deform(){ 对于(var i=0;divinfo.length>i;i++){ document.getElemen

我的javascript有问题。当我点击按钮时,我的div不会变形。 我想这应该是对的,有人知道如何帮助我吗

代码如下:

var-divinfo={
“部门”:[{
“h”:“100”,
“w”:“100”
}, {
“h”:“10”,
“w”:“50”
}, {
“h”:“100”,
“w”:“400”
}
]
};
//警报(divinfo.div[1].h);
函数deform(){
对于(var i=0;divinfo.length>i;i++){
document.getElementById(“div”+i).style.height=divinfo.div[i].h+“px”;
document.getElementById(“div”+i).style.width=divinfo.div[i].w+“px”;
}
}

1.
2.
3.

4
您需要在for循环中使用
divinfo.div.length
,而不是
divinfo.length
divinfo
是一个没有长度属性的javascript对象
divinfo.div
是要迭代的数组

额外提示:看一看。这是一种更现代的数组迭代方法

var-divinfo={
“部门”:[{
“h”:“100”,
“w”:“100”
}, {
“h”:“10”,
“w”:“50”
}, {
“h”:“100”,
“w”:“400”
}
]
};
//警报(divinfo.div[1].h);
函数deform(){
对于(var i=0;divinfo.div.length>i;i++){
document.getElementById(“div”+i).style.height=divinfo.div[i].h+“px”;
document.getElementById(“div”+i).style.width=divinfo.div[i].w+“px”;
}
}

1.
2.
3.

4
应该是
divinfo.div.length
只是为了补充给出的答案,
divinfo
是一个对象,而不是数组。对象不具有
.length
属性,但数组具有该属性。您的
div
对象属性是一个数组,您可以在其上查询
.length
属性。非常感谢Mark!你是个明星@mqgajver很高兴我能提供帮助,如果这完全回答了您的问题,请将此答案标记为已接受答案(勾选问题左侧)。这样其他人就可以看出你不需要进一步的帮助。