ES6 数组新增方法

ES6 数组新增方法目录ES6数组新增方法1、.map2、some和every方法3、filter4、数组新增的reduce方法ES6数组新增方法1、.map.map()给数组中的每一个元素添加特殊处理,返回新的数组实现给定数组添加元letprices=[20,30,40]//20元30元40元letarr=prices.map(item=>item+”元”)给给定数据替换某内容letmovies=[{id:1,name:’逃学…

大家好,又见面了,我是你们的朋友全栈君。

目录

ES6 数组新增方法

1、  .map

2、some和every 方法

3、filter

4、数组新增的reduce方法


ES6 数组新增方法

1、  .map

.map()  给数组中的每一个元素添加特殊处理,返回新的数组

实现给定数组添加元

let prices=[20,30,40] //20元 30元 40元
let arr=prices.map(item=>item+"元")

给给定数据替换某内容

let movies=[{id:1,name:'逃学威龙',imgUrl:"http://xxx.douban.com/1.png"},
            {id:2,name:'逃学威龙',imgUrl:"http://xxx.douban.com/1.png"},
            {id:3,name:'逃学威龙',imgUrl:"http://xxx.douban.com/1.png"}]
movies=movies.map(item=>{
    item.imgUrl=item.imgUrl.replace("xxx","www")
    return item
})
console.log(movies)

2、some和every 方法

.every() 依次 拿出数组中的元素与特定的值进行比较,如果一个返回的是假 整体返回就是假,如果全部返回真 ,则为真  一假既假 
.some() 依次 拿出数组中的元素与特定的值进行比较,如果一个返回的是真 整体返回就是真, 一真既真 

let scores=[2,5,4,8,6,1,11,12]
let result=scores.every(item=>item>=10)
console.log(result)//false

let scores=[2,5,4,8,6,1,11,12]
let result=scores.some(item=>item>=10)
console.log(result)//true

3、filter

依次拿出数组中的元素 返回符合要求的元素
 

let arr=[20,10,5,40,50]
let result=arr.filter(item=>item>30)
console.log(result)//[40,50]

4、数组新增的reduce方法

let result=arr.reduce((prev,item,index,array)=>{
    1.prev 上次操作的返回结果
    2.item 当前处理数组元素
    3.index 当前处理数组元素的索引值
    4.array 当前对应的数组
})

默认情况下 第一次的返回结果是第一个元素  即 第一个prev是数组第一个元素

利用reduce进行求和

let arr=[1,5,4,6]
let result=arr.reduce((prev,item)=>item+prev)
console.log(result)  //16

利用reduce数组去重复
.includes() 判断数组是否有指定元素

let arr=["百度","腾讯","阿里","京东","百度","阿里","京东","百度"]
let result=arr.reduce((prev,item)=>{
     if(!prev.includes(item)){
          prev.push(item)
      }
      return prev
 },[])
 console.log(result)

利用reduce统计数组中每一个字符出现次数 ,返回一个对象 
依次拿出数组中元素,判断其出现的次数  {a:2,n:1,}

let arr=["a","a","n","z"]
 let result=arr.reduce((prev,item)=>{
    //先判断当前是否有 这个属性,如果有属性那么 value++ ,如果没有属性 创造新属性 =1
    //item是否存在prev中
    //如何判断对象是否有指定属性 
    if(item in prev){
        prev[item]++
    }else{
        prev[item]=1
    }
    return prev
},{})
console.log(result)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143117.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 异步fifo的深度,如何确定?_二叉树的最小深度和最大深度

    异步fifo的深度,如何确定?_二叉树的最小深度和最大深度目录1.异步FIFO最小深度计算1.1异步FIFO最小深度计算原理1.2异步FIFO最小深度常用计算公式1.2.1假如读写FIFO是同时进行的1.2.2读写FIFO不是同时进行的情况2.异步FIFO最小深度计算实例2.1用于SDRAM中的读写FIFO2.2异步时钟数据接口3.FIFO实例1.异步FIFO最小深度计算计算FIF…

    2022年8月13日
    9
  • 【目录】python全栈工程师

    【目录】python全栈工程师第一阶段:Python语言核心编程1.Python核心–2048游戏核心算法2.面向对象–天龙八部游戏技能系统3.Python高级–集成操作框架项目:2048游戏第二阶段:

    2022年7月5日
    28
  • XAML的基本语法_英语语法指南与实践

    XAML的基本语法_英语语法指南与实践我们介绍了XAML语法规则,以及用于描述XAML语法中存在的限制或选项的术语。当出现以下情况时你会发现本主题很有用不熟悉XAML语言的使用,希望加强对术语或某些语法部分的理解,或者对XAML语言的工作原理感兴趣,因而希望了解更多背景知识。…

    2025年7月10日
    5
  • docker command not found_阿里云socket连接数

    docker command not found_阿里云socket连接数背景介绍阿里云提醒,服务器需由经典网络迁移至专有网络,迁移完成,启动服务时,原本已经运行了几个月的脚本,报错 10049。127.0.0.1测试无误,ping公网IP也没毛病,百思不得姐。解决方法各方查证,结论如下:阿里云有两种网络①经典网络②专有网络经典网络可以直接绑定公网IP,专有网络绑定公网IP??不好意思,不行!!why???客服是这么讲的“这不是经典网…

    2022年10月1日
    4
  • Windows DIB文件操作具体解释-4.使用DIB Section

    Windows DIB文件操作具体解释-4.使用DIB Section

    2022年2月7日
    42
  • 什么是雪崩效应?雪崩效应常见场景及应对策略

    什么是雪崩效应?雪崩效应常见场景及应对策略一、什么是雪崩效应分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务。如下图,对于同步调用,当会员服务不可用时,订单服务请求线程被阻塞,当有大批量请求调用会员服务时,最终可能导致整个会员服务资源耗尽,无法继续对外提供服务。并且这种不可用可能沿请求调用链向上传递,这种现象被称为雪崩效应。​二、雪崩效应常见场景硬件故障:如剔除坏盘抖动,服务器宕机,网络抖动,机房断电,光纤被挖断等;流量激增:如异常流量,重试加大流量等;缓存穿透:短时间内大量缓存失效时,大

    2022年7月13日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号