JavaScript中for vs for var之间的区别

Kee*_*ode 5 javascript for-loop for-in-loop

我在PHP中填充关联数组,并在JS函数中访问该数组。我使用json_encode()将PHP数组转换为JS数组。我使用IE 8运行此应用程序。在使用IE 8的某些计算机中,for(;;)可以工作,但在其他计算机中则失败。在某些使用IE 8的计算机中,for(var in)可以工作,但在其他计算机中则失败。以下代码有什么区别?

for (var k = 0; k < ruleList.length; k++){ //do something } 

for (var x in ruleList){ //do something }
Run Code Online (Sandbox Code Playgroud)

gle*_*man 2

正如MDN 文档中所述:

for ...in 语句以任意顺序迭代对象的可枚举属性。对于每个不同的属性,可以执行语句。

第一个语句用于数组,第二个语句用于获取对象的所有键。