forEach for 循环
前言:foreach 语句为数组或对象集合中的每个元素重复一个嵌入语句组。foreach 语句用于循环访问集合以获取所需信息,但不应用于更改集合内容以避免产生不可预知的副作用。
能够应用的编程语言类别:Java、C# 、PHP、D语言(Phobos库)。
定义和用法
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。
注意: forEach() 对于空数组是不会执行回调函数的。
语法
array.forEach(function(currentValue, index, arr), thisValue)
参数 | 描述 |
---|---|
currentValue | 必需。当前元素 |
index | 可选。当前元素的索引值。 |
arr | 可选。当前元素所属的数组对象。 |
thisValue | 可选。传递给函数的值一般用 "this" 值。 如果这个参数为空, "undefined" 会传递给 "this" 值 |
实例&&注释
foreach有的也叫增强for循环,foreach其实是for循环的一个特殊简化版。
forEach是ES5中操作数组的一种方法,主要功能是遍历数组,例如:
var
arr = [1,2,3,4];
arr.forEach(alert);
等价于:
var
arr = [1, 2, 3, 4];
for
(
var
k = 0, length = arr.length; k < length; k++) {
alert(array[k]);
}
forEach方法中的function回调有三个参数:第一个参数是遍历的数组内容,第二个参数是对应的数组索引,第三个参数是数组本身
因此:
如 1:
let numbers = [65, 44, 12, 4];
numbers.forEach(function (item){// numbers 当前元素所属的数组对象 item 指array类型里的每个元素
sums.innerHTML = item;//4 显示最后一个元素,因为后面的元素会把前面显示的数据覆盖掉
console.log(item);//65 44 12 4 item 指numbers 里的每个元素
let sum += item;});
如 2:
[].forEach(function(value,index,array){
//
code
something
});
var
arr = [1,2,3,4];
arr.forEach(
function
(value,index,array){
array[index] == value;
//结果为true
sum+=value;
});
console.log(sum);
//结果为 10
jQuery 中forEach
$.each([],function(index,value,array){
//
code
something
})