var o = {x:1, y:2, z:3};
var a = new Array( );
var i = 0;
for(a[i++] in o)
var m=a[i++];//此时,m=a[3]=null
alert(m); //弹出 undefined
for(m in o)
alert(i); //弹出6、6、6,为什么
alert(m)//弹出 z请高手指点
var a = new Array( );
var i = 0;
for(a[i++] in o)
var m=a[i++];//此时,m=a[3]=null
alert(m); //弹出 undefined
for(m in o)
alert(i); //弹出6、6、6,为什么
alert(m)//弹出 z请高手指点
所以只循环了紧接for的一句.
所以始终是第二句运行后的终值.
var m=a[i++];//此时,m=a[3]=null for里面的a[i++]一运行,i值变成1
var m=a[i++];这句一执行,i变成23个循环下来,i就变成了6.去理解一下i++;自增,应该怎么用!
var o = {x:1, y:2, z:3};
var a = new Array();
var i = 0;
for(a[i] in o)
{
var m=a[i];//此时,m=a[3]=null
i++;
alert(m); //弹出 undefined
alert("i自增为:"+i);
} for(m in o)
{
alert(i); //i经过3次自增后,变为3
alert(m)//弹出 z
}