目录
前言
在比较之前我们先了解两个概念:
- 迭代(iterate),指的是按照某种顺序反复多次执行一段程序,通常会有明确的终止条件。
- 遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。
一、四种循环
1、for循环
for语句是一种先测试循环语句,(即先检测退出条件,再执行循环体内的代码.)
- 语法:
for(初始化变量;条件表达式;操作表达式){
循环体语句;
}
(1)三个表达式都可以省略,但是表达式之间的分号不能省略。都省略的话就创建了一个无穷循环。
for(;;){ //无穷循环
循环体语句
}
(2)初始化变量:给循环变量、其他变量进行初始化。
(3)条件表达式:控制循环体语句是否执行。如果只包含条件表达式for循环就变成while循环。
(4)操作表达式:使循环趋向结束的语句 。
- 用法:
(A) for循环用于遍历数组,不可直接遍历对象。(需要用Object.key()属性转化)
//for循环遍历数组
var arr = [1,2,3,4,5]
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
//for循环遍历对象
var obj = {a:1,b:2,c:3} //对象
var obj2 = Object.keys(obj) //用Object.key()属性转化为数组类型
console.log(obj2);
for (let i = 0; i < obj2.length; i++) {
console.log(obj2[i]+':'+obj[obj2[i]]);
}
(B) 能使用break,continue语句跳出循环。
var arr = [