Javascript数组循环遍历之forEach详解
foreEach()方法的基本使用
JavaScript中的数组可以使用forEach()方法进行遍历,forEach()方法接收一个函数作为参数,该函数将在数组中的每个元素上运行,基本语法如下:
array.forEach(function(currentValue, index, arr), thisValue)
其中,参数currentValue表示正在处理的当前元素;index表示正在处理的当前元素的索引;arr表示正在处理的数组;thisValue表示在执行回调函数时使用的this值。
下面是一个简单的forEach遍历示例:
var arr = [1,2,3,4,5];
arr.forEach(function(item){
console.log(item);
});
这段代码可以输出数组arr的每个元素:1, 2, 3, 4, 5。
forEach()的优缺点
优点:
* forEach是迭代数组的简单而直接的方法;
* forEach函数没有返回值,主要用于执行回调函数;
* 与for循环和while循环不同,使用forEach方法可以使代码更简洁、易读。
缺点:
* forEach无法使用break,所以无法提前退出循环;
* forEach无法在迭代过程中修改数组中的值;
* 存在性能问题。
## forEach()的第二个参数
forEach()方法的第二个参数是可选的,它指定了在回调函数调用时作为this的值。
下面是一个示例:
var arr = [1,2,3,4,5];
var sum = 0;
arr.forEach(function(item){
sum += item;
}, this);
console.log(sum);
在该示例中,使用forEach()的第二个参数将this指定为全局对象(即window对象)。
forEach()与匿名函数的使用
匿名函数也可以作为forEach()的参数。下面是一个示例,匿名函数可以使用箭头函数(ES6/ECMAScript 2015):
var arr = [1,2,3,4,5];
arr.forEach(item => console.log(item));
这段代码可以输出数组arr的每个元素:1, 2, 3, 4, 5。
forEach()与对象数组的使用
forEach也可以遍历对象数组,下面是一个示例:
var persons = [
{name:"张三", age:20},
{name:"李四", age:30},
{name:"王五", age:40}
];
persons.forEach(function(person){
console.log(person.name + " 年龄是 " + person.age + " 岁");
});
运行该代码,将会输出如下结果:
张三 年龄是 20 岁
李四 年龄是 30 岁
王五 年龄是 40 岁
以上就是“JavaScript数组循环遍历之forEach详解”的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Javascript数组循环遍历之forEach详解 - Python技术站