#ES5循环
for循环
const arr = [1,2,3,4,5];
for (let i = 0; i<arr.length; i++) {
console.log(arr[i]);
}
//浏览器中输出结果为
// 1
// 2
// 3
// 4
// 5
//for 循环支持break和continue语法
// 例如
for (let i = 0; i<arr.length; i++){
if (arr[i] === 2) {
break; // 退出循环
}
if (arr[i] === 3) {
continue; // 继续循环
}
}
// forEach循环语法相对简单,但是其不支持break和continue语法
// 例子
arr.forEach(function (item) {
if(item === 2) {
break; // forEach不支持break,报错
}
if(item === 3) {
continue; // forEach不支持continue,报错
}
console.log(item); //item为循环参数
})
//浏览器中输出结果为
// 1
// 2
// 3
// 4
// 5
// every 不支持break和continue语法
arr.every(function (item){
if (item === 2) {
return false; //退出循环
}
if (item === 2){
console.log(item);
return true; //跳过 2 继续循环
}
})
// for in 遍历对象,也能遍历数组,因为数组也是对象,但是遍历数组时存在瑕疵
for (let index in arr) {
if (index * 1 ===2) {
continue
}
console.log(index,arr[index]);
}
// for of
for (let item of arr) {
console.log(item);
}
// 输出
// 1
// 2
// 3
// 4
// 5