Javascript 中的for…in…循环

来源:互联网 发布:知乎回答是井柏然 编辑:程序博客网 时间:2024/06/04 19:14

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

// Create an object with some propertiesvar myObject = new Object();myObject.name = "James";myObject.age = "22";myObject.phone = "555 1234";// Enumerate (loop through)_all the properties in the objectfor (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 JamesThe property 'age' is 22The property 'phone' is 555 1234

本文出自 “独钓寒江雪” 博客,请务必保留此出处http://zhaojie.blog.51cto.com/1768828/1310402

0 0
原创粉丝点击