ES6:for of 循环

先定义一个测试用的数组:

const peoples = [ 'Tom', 'Jerry', 'Mario', 'Yoshi'];

最基本的for循环

通过定义一个索引值 i 来循环:

for(let i = 0; i < peoples.length; i++) {
	console.log(peoples[i]); //Tom Jerry Mario Yoshi
}

数组forEach()方法

peoples.forEach(people => {
	console.log(people); //Tom Jerry Mario Yoshi
})

注意:
1️⃣ forEach() 是数组特有的方法
2️⃣ forEach() 不支持breakcontinue

peoples.forEach(people => {
	if (people === 'Mario') {
	break;
	}
	console.log(people); //SyntaxError
})

for in 循环

for(let index in peoples) {
	console.log(peoples[index]); //Tom Jerry Mario Yoshi
}

注意:
1️⃣ for in 循环 的值是属性名而不是属性值,数组的元素是属性值,而索引才是属性名
在这里插入图片描述
2️⃣ for in 循环 会遍历所有可枚举的属性:

//添加一个新属性:
peoples.sex = 'man';
//数组原型对象添加方法:
Array.prototype.fn = function() {
	return this[0];
}

for(let index in peoples) {
	console.log(peoples[index]); //Tom Jerry Mario Yoshi
}

在这里插入图片描述

ES6:for of 循环

```javascript
for(let people of peoples) {
	console.log(people); //Tom Jerry Mario Yoshi
}

for of 循环 可以说是综合了以上循环的优点,弥补了缺点,综合了以上书写的简便,也不会像for in 循环 遍历所有可枚举的属性
注意:
for of 循环 有一个致命缺点就是他 不适用于对象

发布了26 篇原创文章 · 获赞 0 · 访问量 606

猜你喜欢

转载自blog.csdn.net/weixin_43856797/article/details/103988597