三种循环的介绍

(1)For each ... in:

Explanation:

  语法:for each(variable in object){

                    statement

                  }

  参数:

varible
用来遍历属性值的变量,前面的var关键字是可选的.该变量是函数的局部变量而不是语句块的局部变量.
object
该对象的属性值会被遍历.
statement
遍历属性值时执行的语句. 如果想要执行多条语句, 请用({ ... }) 将多条语句括住.

Examples:

var sum = 0;

var obj = {prop1: 5, prop2: 13, prop3: 8};

for each (var item in obj) {  

  sum += item;

}

print(sum);   // 输出"26",也就是5+13+8的值

 

(2)For....in:
Explanation:
  语法:for(variable in object){

                    ...

                  }

循环遍历对象的key,是键值对前面的那一个。

一般不推荐遍历数组,因为for in遍历后的不能保证顺序,而且原型链上的属性也会被遍历到,因此一般常用来遍历非数组的对象并且使用hasOwnProperty()方法去过滤掉原型链上的属性

Examples:

var myArry =[1,2,3,4];

myArry.desc =‘four‘;

for(var value in myArry){   //循环key

   console.log(value)

}

//"0"

//"1"

//"2"

//"3"

//"desc" 注意这里添加上去的属性也被遍历出来了

 

(3)For....of
Explanation:
  语法:for(variable of iterable){

                    statement

                  }

循环遍历对象的值,是遍历键值对后面的那一个value ,与for in遍历key相反。

这是最简洁、最直接的遍历数组元素的语法,这个方法避开了for-in循环的所有缺陷。

Examples:
var myArry =[1,2,3,4];

myArry.desc =‘four‘;

for(var value of myArry){

  console.log(value)

}

//1

//2

//3

//4

posted @ 2018-11-13 14:22  Faith林夕  阅读(315)  评论(0编辑  收藏  举报