一.for循环

1.循环:

一轮一轮的重复做某一件事情(真实项目中一般应用于:循环一个集合或者控制循环处理的次数,每一轮循环都控制相关的事情执行一遍)

2.for循环格式:

for(设置初始值;设置循环执行的条件,控制循环次数;每一轮循环结束后处理的事情[步长累加]){
循环体(每一轮循环要做的事情) 
}

3.循环顺序:

1.设置初始值

2.验证条件(条件不成立循环结束)

3.循环体

4.步长累加

5.再次验证条件

6.循环体

.....

例题:

ios for in循环 顺序_遍历数组

ios for in循环 顺序_ios for in循环 顺序_02

 

上述代码实现原理: 

ios for in循环 顺序_ios for in循环 顺序_03

ios for in循环 顺序_ios for in循环 顺序_04

 

4.for循环关键字:

break 强制结束整个循环(循环体中一旦遇到break,整个循环都结束了,break下面代码不再执行,步长累加也不再执行)

continue 结束本轮循环,下一轮继续(循环体中一旦遇到continue,本轮循环结束,continue下面的代码不再执行,但是步长累加会执行)

例题:

ios for in循环 顺序_属性值_05

ios for in循环 顺序_javascript_06

 

5.for循环遍历数组

遍历数组中的每一项,因为数组有索引和length属性,所以我们能够知道循环次数,也能基于索引获取对应项,使用for循环就可以解决

ios for in循环 顺序_for循环_07

二.for in循环

遍历对象中的每一个属性:我们无法直接获取到对象中有多少个属性(DS6中的Object.keys除外),

也就无法知道循环多少次,所以无法使用for循环;真实项目中遍历对象我们基于for in循环

注意:

1.格式:for(var 变量 in 对象){}        再注意:创建变量(存储的是属性)

2.for in 遍历的时候,是优先按照从小到大的机制来遍历数字属性的

下面代码key执行的顺序:0 10 name age add

3.当前对象中有多少个可枚举的属性,就循环多少次

4.key变量存储的是每一次循环的属性名

5.obj[key]获取key变量对象属性名的属性值

6.不一样的写法表达的意思也不一样

        第一轮循环 key='name' obj[key] => obj['name']

        obj.key或者obj['key']获取属性名叫做key的属性值

例题:

ios for in循环 顺序_属性值_08