forEach是ES5中操作数组的一种方法,主要功能是遍历数组,例如:
1
2
|
var arr = [1,2,3,4]; arr.forEach(alert); |
等价于:
1
2
3
4
|
var arr = [1, 2, 3, 4]; for ( var k = 0, length = arr.length; k < length; k++) { alert(array[k]); } |
forEach方法中的function回调有三个参数:第一个参数是遍历的数组内容,第二个参数是对应的数组索引,第三个参数是数组本身
因此:
1
2
3
4
5
|
[].forEach(function(value,index,array){ // code something }); |
等价于:
1
2
3
4
5
|
$.each([],function(index,value,array){ // code something }) |
写一个例子;
1
2
3
4
5
6
|
var arr = [1,2,3,4]; arr.forEach( function (value,index,array){ array[index] == value; //结果为true sum+=value; }); console.log(sum); //结果为 10 |
map:map即是 “映射”的意思 用法与 forEach 相似,用法即:
1
2
3
4
5
|
[].map(function(value,index,array){ // code }) |