Array类型 - 迭代方法
首先,以下的方法都接收两个参数:
xx(对每个元素都执行的function,[作用域]);
[]代表可选
every
如果对每一项元素执行function后都返回true,则every()才返回true,不然返回false【返回值是布尔值】
var num = [1,2,3,4,5,4,3,2,1];
var everyResult = num.every(function(v,k,arr){
return v > 2;
});
alert(everyResult); // false ∵并不是每一个都大于2
some
如果任意一项元素执行funciton后返回true,some就返回true。【返回值是布尔值】
var someResult = num.some(function(v,k,arr){
return v > 2;
});
alert(someResult); //true ∵只要有一个元素满足大于2就ok
filter
返回(该function会返回true的项组成的)数组。【返回值是数组】
var filterResult = num.filter(function(v,k,arr){
return v > 2;
});
alert(filterResult); //[3,4,5,4,3]
这个方法对查询符合某些条件的所有数组项非常有用!【过滤】
map
返回(function处理过的结果组成的)数组【返回值是数组】
var mapResult = num.map(function(v,k,arr){
return v * 2;
});
alert(mapResult); // [2,4,6,8,10,8,6,4,2]
这个方法适合创建每一个元素与另一个数组一一对应的数组。【对某数组每个元素进行统一处理之后输出】
forEach
执行function就行,没有返回值。【无返回值】

浙公网安备 33010602011771号