一、for循环
for(var num = 1;num<10;num++){
console.log(num);//1,2,3,4,5,6,7,8,9
}
**二、while循环 **
var num = 1;//1、声明循环变量
while (num<10){//2、判断循环条件;
console.log(num);//3、执行循环体操作;
num++;//4、更新循环变量;
}
三、do-while循环
while循环特点:先判断后执行;
do-while循环特点:先执行再判断,即使初始条件不成立,do-while循环至少执行一次,也就是说do-while循环比while循环多执行一次。
var num = 10;
do{
console.log(num);//10 9 8 7 6 5 4 3 2 1 0
num–;
}while(num>=0);
console.log(num);//-1
四、for - in
for - in语句用于对数组或者对象的属性进行循环操作。
let obj={‘name’:‘programmer’,‘age’:‘22’,‘height’:‘180’};
for(let i in obj){
console.log(i,obj[i])
}
五、for - of
for…of循环可以使用的范围包括数组、Set 和 Map 结构、某些类似数组的对象(比如arguments对象、DOM NodeList 对象)、后文的 Generator 对象,以及字符 串。
JavaScript 原有的for-in循环,只能获得对象的键名,不能直接获取键值。ES6 提供for…of循环,允许遍历获得键值
var arr = [‘a’, ‘b’, ‘c’, ‘d’];
for (let a in arr) {
console.log(a); // 0 1 2 3
}
for (let a of arr) {
console.log(a); // a b c d
}
六、循环控制语句
1、break:跳出本层循环,继续执行循环后面的语句。
如果循环有多层,则break只能跳出一层。
2、continue:跳过本次循环剩余的代码,继续执行下一次循环。
①对与for循环,continue之后执行的语句,是循环变量更新语句i++;
②对于while、do-while循环,continue之后执行的语句,是循环条件判断;
因此,使用这两个循环时,必须将continue放到i++之后使用,否则continue将跳过 i++进入死循环。
for(var i=0;i<10;i++){
if(i == 5){
break;
}
console.log(i);//0,1,2,3,4
}
for(var i=0;i<10;i++){
if(i == 5){
continue;
}
console.log(i);//0,1,2,3,4,6,7,8,9
}
七、forEach 循环
let arr = [1,2,3];
arr.forEach(function(i,index){
console.log(i,index)
})