一.for循环
1.循环:
一轮一轮的重复做某一件事情(真实项目中一般应用于:循环一个集合或者控制循环处理的次数,每一轮循环都控制相关的事情执行一遍)
2.for循环格式:
for(设置初始值;设置循环执行的条件,控制循环次数;每一轮循环结束后处理的事情[步长累加]){
循环体(每一轮循环要做的事情)
}
3.循环顺序:
1.设置初始值
2.验证条件(条件不成立循环结束)
3.循环体
4.步长累加
5.再次验证条件
6.循环体
.....
例题:
上述代码实现原理:
4.for循环关键字:
break 强制结束整个循环(循环体中一旦遇到break,整个循环都结束了,break下面代码不再执行,步长累加也不再执行)
continue 结束本轮循环,下一轮继续(循环体中一旦遇到continue,本轮循环结束,continue下面的代码不再执行,但是步长累加会执行)
例题:
5.for循环遍历数组
遍历数组中的每一项,因为数组有索引和length属性,所以我们能够知道循环次数,也能基于索引获取对应项,使用for循环就可以解决
二.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的属性值
例题: