一、for 循环
for 是最常见的循环:
var members = ["张三", "李四", "王五"];
for(var i=0; i< members.length; i++){
console.log(members[i])
}
for 循环最大的缺点是必须有计数器i和退出的条件,很多数据结构如果不是数组的情况下就无法使用。
二、for...in 循环
var members = ["张三", "李四", "王五"];
for(var i in members){
console.log(members[i])
}
for...in循环它消除了计数器逻辑和退出的条件,缺点是如果你向数组的原型添加了任何的其他属性,这些属性也会在循环中。
三、forEach 数据方法
forEach() 方法只能用在数组中,将函数应用在每一项:
var members = ["张三", "李四", "王五"];
members.forEach(member => console.log(member));
四、for...of 循环
for..of 用于循环可以迭代的数据类型,可以忽略索引:
var members = ["张三", "李四", "王五"];
for (var member of members){
console.log(member)
}
另外解决了for和for...in循环的不足之处,可以随时停止或退出for...of循环:
const numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
for (const number of numbers) {
if (number % 2 === 0) {
continue; // 终止当前循环,并在下次循环时继续执行循环
}
console.log(number);
}