2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 【JavaScript】使用 for...in for...of 或者 forEach() 遍历元素

【JavaScript】使用 for...in for...of 或者 forEach() 遍历元素

时间:2019-04-02 02:55:35

相关推荐

【JavaScript】使用 for...in   for...of 或者 forEach() 遍历元素

for...infor...offorEach都是用于循环遍历集合元素的方法,但它们之间有一些重要的区别:

for...in循环:

for...in主要用于遍历对象的属性,通常是遍历对象的可枚举属性(包括继承的属性),而不是数组或集合元素。它遍历对象的属性名称(键名),而不是属性的值。遍历对象属性时,包括继承的属性和原型链上的属性。适用于遍历普通对象(Object)的属性,不适用于数组或类似数据集合的遍历。

示例:

const person = {name: 'John',age: 30,job: 'Engineer'};for (let key in person) {console.log(key + ': ' + person[key]);}

输出:

name: Johnage: 30job: Engineer

for...of循环:

for...of用于遍历可迭代对象(如数组、字符串、Map、Set 等),并访问它们的值。它不会遍历对象的属性,只会遍历集合中的元素。适用于遍历数据集合,而不是对象的属性。

示例:

const colors = ['red', 'green', 'blue'];for (let color of colors) {console.log(color);}

输出:

redgreenblue

forEach:

用于遍历数组的元素,对每个元素执行一个回调函数。提供了更高级别的抽象,让你可以更容易地执行数组操作,如映射、筛选、累加等。不适用于普通对象,只适用于数组。

示例:

Copy codeconst numbers = [1, 2, 3, 4, 5];numbers.forEach(function(number) {console.log(number);});

主要区别总结:

for…in 用于遍历对象的属性,for…of 用于遍历可迭代对象的元素,而 forEach 用于遍历数组元素。for…in 适用于对象,for…of 和 forEach 适用于数组。forEach 允许你传递一个回调函数,更容易进行复杂的操作,而 for…in 和 for…of 较为基础,只能用于遍历。注意遍历对象时,for…in 会遍历继承的属性,这可能需要额外的处理。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。