JS数组(Array)的常用方法总结

ES5

  • concat(不改变原数组)
    • 传入一个以上的参数,参数会被转为数组,返回连接后的一个数组
  • join (不改变原数组)
    • 传入一个字符串,作为分割符,返回分隔好的字符串
  • push / unshift (改变原数组)
    • 传入一个以上的参数,参数会被转为数组,在数组的结尾/开头处添加元素,返回添加后的长度
  • pop / shift (改变原数组)
    • 删除数组最后/第一个元素,返回这个元素
  • slice (不改变原数组)
    • 第一个参数表示从何处开始获取,第二个参数表示从何处结束(负数为从后开始数),返回切割到的数组
  • splice (改变原数组)
    • 第一个参数表示从何处开始删除,第二个参数表示从何处结束,第三个参数表示向数组添加的元素
  • sort (改变原数组)
    • 默认按照 ASCII 排序,也可接受一个函数例如 (a, b) => a - b ,返回一个数值表示二者的顺序
  • reverse (改变原数组)
    • 倒序
  • indexOf 和 lastIndexOf
    • 从数组的头/从结尾开始查找传入的参数,返回索引号或者-1
  • every (不改变原数组,可自定义this)
    • 接受一个函数(必须返回布尔值),遍历数组,判断每个元素是否满足函数中的条件
  • some (不改变原数组,可自定义this)
    • 接受一个函数(必须返回布尔值),遍历数组,判断是否有某个元素满足函数中的条件
  • filter (不改变原数组,可自定义this)
    • 接受一个函数(必须返回布尔值),遍历数组,返回包含满足条件的元素组成的数组
  • map (不改变原数组,可自定义this)
    • 接受一个函数,遍历数组,返回函数操作后的新数组
  • forEach (不改变原数组,可自定义this)
    • 自定义遍历,第一个参数是元素,第二个是元素的索引,第三个是数组本身
  • reduce
    • 接受一个函数作为累计器,第二个参数为初始值
    • 函数的参数:
      • 结束后的返回值
      • 当前元素
      • 当前元素的索引
      • 引用的数组对象

ES6

  • find(function(value, index, arr),this)
  • findIndex
    • 同上,返回的是索引
  • fill(value, start, end)
    • 用一个固定值替换数组的元素
  • copyWithin(target, start, end)
  • from(object, mapFunction, this)
    • object必须为可跌代对象,mapFunction是每个传入的元素执行的回调
  • of
    +把传入的所有参数组成一个数组返回
  • entries
    • 返回一个数组的迭代对象,{索引,值}
  • values
    • 同上,返回值
  • key
    • 同上,返回索引
  • includes(searchElement, fromIndex)
  • flat() (不改变原数组)
    • 扁平化数组,接收一个数值作为扁平化的层数,默认为 1,可以传入 Infinity
  • flatMap()
    • 好像跟 Array.flat().map(function) 没区别吧?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值