数组函数forEach()、map()、filter()的分别

参数:item(数组元素)、index(序列)、arr(数组本身);

arr.forEach()

遍历数组全部元素,利用回调函数对数组进行操作,自动遍历数组.length次数,且无法break中途跳出循环

因此不可控

不支持return操作输出,return只用于控制循环是否跳出当前循环

因此难操作成新数组,新值,故不作多分析

示例:

var arr = [1,2,3,4,5,] ;
arr.forEach(function(item,index){
    console.log(item);
});
 

 

arr.map()— —更新数组

1、创建新数组

2、不改变原数组

3、输出的是return什么就输出什么新数组

4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)

5、使用return操作输出,会循环数组每一项,并在回调函数中操作

示例:

 var arr = [1,2,3,4,5] ;
 var newArr = arr.map(function(item,index){
         return item*2 ;        //操作更新数组
 })
 console.log(newArr);                  //打印新数组
 console.log(arr);                     //打印原数组,map()没有改变原数组
 var newArr2 = newArr.map(function(item,index){
         return `<li>${item}</li>` ;
              //ES6语法,模版字符串,波浪号键,变量使用${}
           //["<li>NaN</li>", "<li>NaN</li>", "<li>NaN</li>", "<li>NaN</li>", "<li>NaN</li>"]
 })
 console.log(newArr2.join(''));        //数组.join(),把数组每一项连接起来,形成字符串string
 console.log(newArr);                   //打印数组,map()没有改变原数组

 

arr.filter()

1、创建新数组

2、不改变原数组

3、输出的是判断为true的数组元素形成的新数组

4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)

5、使用return操作输出,会循环数组每一项,并在回调函数中操作

示例:

 
  1. var arr = [1,2,3,4,5] ;
    var newArr = arr.filter(function(item,index){
            return item>2&&item<5 ;         //根据判断为true来遍历循环添加进新数组
    })
    console.log(newArr);                            //打印新数组
    console.log(arr);                               //打印原数组,map()没有改变原数组
     
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值