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就行,没有返回值。【无返回值】

posted @ 2016-04-11 17:23  Sameen  阅读(110)  评论(0)    收藏  举报