JS中的Array之方法(3) -之迭代

colors=["red", "橘色", "瓜皮色", "古铜色", "#aaa", "#bbb", "#ccc"]

(1). every(func(e,idx,arr)) // 对数组每一项都执行func,所有都返回true,结果才返回true,否则false;

colors.every(function(e,i,arr){
    if(e.length>0){
        alert(e.length)
        return 1;
   }else{
        alert('Blank String');
        return 0;
   }
});
>>>false;

 

(2). some(func(e,idx,arr)) // 对数组每一项都执行func,某一个返回true,结果就返回true;

                                                                                     所有都返回false,  结果才是false;

a=2;
colors.some(function(e,i,arr){
    a=a+1;
    if(e.length>0){
        alert("Have one Not Empty")
        return 1;
   }else{
        alert('Blank String');
        return 0;
   }
});
a
>>>a=3
//可见function只执行了一次,返回true就不执行了。

 

(3). filter(func(e,idx,arr)) // 对数组中每个元素执行func,返回其中为true的元素。

colors
>>>["red", "橘色", "瓜皮色", "古铜色", "#aaa", "#bbb", "#ccc", ""]
filtered_colors = colors.filter(function(e,i,arr){
    a=a+1;
    if(e.length>0){
        alert("Have one Not Empty")
        return 1;
   }else{
        alert('Blank String');
        return 0;
   }
});
filtered_colors
>>>["red", "橘色", "瓜皮色", "古铜色", "#aaa", "#bbb", "#ccc"]
//a=10

 

(4). forEach(func(e,idx,arr)) // 对数组中的每一个元素执行指定函数func,无返回值。

colors.forEach(function(e,i,arr){
    alert('元素:' + e + ',索引:' + i + ';数组是:【' + arr + '】');
});

 

(5). map(func(e,idx,arr)) // 对数组每个元素执行指定函数func,返回结果是一个数组,其中的元素是每个元素执行func函数时调用的返回值。

arr = colors.map(function(e,i,arr){
    return e + '@' + i + '@' + e.length;
});
arr 
>>>["red@0@3", "橘色@1@2", "瓜皮色@2@3", "古铜色@3@3", "#aaa@4@4", "#bbb@5@4", "#ccc@6@4", "@7@0"]

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值