标签:
1、Array.prototype.forEach()
forEach()
方法让数组的每一项都执行一次给定的函数。
语法:
array.forEach(callback[, thisArg])
callback
thisArg
用来当作callback
函数内this的
值的对象。示例
var arr = [1,2,3]; arr.forEach(function(item, index, array){ console.log(item); });
2、Array.prototype.map()
map()
方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。
语法:
array.map(callback[, thisArg])
callback
currentValue
callback
的第一个参数,数组中当前被传递的元素。 index
callback
的第二个参数,数组中当前被传递的元素的索引。 array
callback
的第三个参数,调用 map
方法的数组。thisArg
callback
函数时 this
指向的对象。var arr = [1,2,3]; var newArr = arr.map(function(item, index, array){ return item+1; }); console.log(newArr); //[2,3,4] console.log(arr); //[1,2,3]
3、Array.prototype.reduce()
reduce()
方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始合并,最终为一个值。
语法:
arr.reduce(callback,[initialValue])
callback
执行数组中每个值的函数,包含四个参数
previousValue
currentValue
index
array
reduce
的数组initialValue
回调函数第一次执行时,previousValue
和 currentValue
可以是一个值,如果 initialValue 在调用 reduce 时被提供,那么第一个 previousValue 等于 initialValue ,并且currentValue 等于数组中的第一个值;
如果initialValue 未被提供,那么previousValue 等于数组中的第一个值,currentValue等于数组中的第二个值。
[1,2,3,4].reduce(function(prev, cur, index, array){ console.log(prev+‘=‘+cur); return prev+ cur; });
结果:
1=2
3=3
6=4
10
[1,2,3,4].reduce(function(prev, cur, index, array){ console.log(prev+‘=‘+cur); return prev+ cur; }, 10);
结果:
10=1
11=2
13=3
16=4
20
4、Array.prototype.every()
every()
方法测试数组的所有元素是否都通过了指定函数的测试。不会改变原数组。
语法:
arr.every(callback[, thisArg])
callback
thisArg
callback
时使用的 this
值。var arr = [1,2,3,6]; arr.every(function(item, index, array){ return item <5; }); // false
5、Array.prototype.indexOf()
indexOf()方法
返回给定元素能找在数组中找到的第一个索引值,否则返回-1。
语法
arr.indexOf(searchElement[, fromIndex = 0])
searchElement
fromIndex
标签:
原文地址:http://www.cnblogs.com/sanbao/p/5348487.html