Javascript 中的for…in…循环-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Javascript 中的for…in…循环

简介:

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

1
2
3
4
5
6
7
8
9
10
11
12
13
// 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循环,但大多数对象都无法实现这一点。

上述代码执行结果:

1
2
3
The property 'name' is James
The property 'age' is 22
The property 'phone' is 555 1234



本文转自 huohe2009 51CTO博客,原文链接:http://blog.51cto.com/zhaojie/1310402

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: