Javascript 中的for…in…循环

JavaScript提供一种特殊的循环,用于单步执行对象的所有用户定义的属性或数组的所有元素。for...in循环中的循环计数器是字符串,而不是数字。它包含当前属性的名称或当前数组元素的索引。

// Create an object with some properties
var myObject = new Object();
myObject.name = "James";
myObject.age = "22";
myObject.phone = "555 1234";
// Enumerate (loop through)_all the properties in the object
for (var prop in myObject)
{
// This displays "The property 'name' is James", etc..
document.write("The property '" + prop + "' is " + myObject[prop]);
// New line.
document.write("<br />");
}

虽然for...in循环看起来类似于VBScript的ForEach...Next循环,但二者的工作方式不同。JavaScriptfor...in循环将循环访问JavaScript对象的属性。VBScriptForEach...Next循环将循环访问集合中的项(C#中的for…in…循环也是遍历集合的)。若要循环JavaScript中的集合,您需要使用Enumerator对象。虽然某些对象(如InternetExplorer中的对象)同时支持VBScriptForEach...Next循环和JavaScriptfor...in循环,但大多数对象都无法实现这一点。

上述代码执行结果:

The property 'name' is James
The property 'age' is 22
The property 'phone' is 555 1234

你可能感兴趣的:(js,in,for)