js常用数组方法整理

会改变原数组

1.push() — 按照顺序向数组后面追加你要插入的数据

  • 语法:
    • 数组.push(数据)
    • 数组.push(数据1,数据2,数据3,…)
  • 返回值:
    • 追加数据以后,数据的最新 长度

2.pop() — 删除数组的最后一个数据

  • 语法:
    • 数组.pop()
  • 返回值:
    • 被删除的数据

3.unshift() — 按照顺序向数组的最前面插入数据

  • 语法:
    • 数组.unshift(数据)
    • 数据.unshift(数据1,数据2,数据3,…)
  • 返回值:
    • 插入数据后,数组的最新 长度

4.shift() — 删除数组最前面的数据

  • 语法:
    • 数组.shift()
  • 返回值:
    • 被删除的数据

5.reverse() — 反转数组

  • 语法:
    • 数组.reverse()
  • 返回值:
    • 反转以后的数组

6.sort() - 数组排序

  • 语法
    • 数组.sort()
      • 一位一位看待按照 ascii码表的顺序排列
    • 数组.sort(function(a,b){ return a - b })
      • 按照数字从小到大排列
    • 数组.sort(function(a,b){ return b - a })
      • 按数字从大到小排列
  • 返回值:排好序的数组

7.splice() - 从原始数组内截取一部分数据,并插入新数据(可选择性的插入)

  • 语法:
    • 数组.aplice(开始索引,多少个)
    • 数组.splice(开始索引,多少个,数据1,数据2,数据3,…)
      • 按照顺序吧要插入的内容插入到数组截取位置
      • 注意:从哪截取,从哪插入
  • 返回值:必然是一个新的数组
    • 新数组按照顺序存储截取下来的内容
    • 如果没有截取就是一个空数组

不会改变原数组

8.forEach() — 遍历数组

  • 语法:
    • 数组.forEach(function(item,index,arr){
      item 数组的每一项
      index 数组每一项的索引
      arr 原数组
      })
  • 返回值:
    • 没有返回值----undefined

9.map() — 映射原数组

  • 语法:
    • 数组.map(function(item,index,arr){})
  • 返回值:
    • 一个和原始数组一样长度的新数组,并且内部的数据是被映射操作过的数据

10.filter() — 过滤原数组

  • 语法:
    • 数组.filter(function(item,index,arr){})
  • 返回值:一个新数组
    • 在原始数组中满足条件的项
    • 在回调函数中以 return 的形式书写,过滤条件

11.every() — 判断数组内是不是所有项都满足条件

  • 语法:
    • 数组.every()
  • 返回值:
    • 所有项都满足返回 true
    • 有任意一项不满足返回 false

12.some() — 判断数组内是不是有某一项满足条件

  • 语法:
    • 数组.some()
  • 返回值:
    • 只要数组内任意一项满足条件,返回值为 true
    • 主要所有项都不满足条件时,返回值为 false

13.flat() — 拍平一个数组

  • 语法:
    • 数组.flat()
    • 如果不传递参数确认拍平一层
    • 传递数字是几,就拍平几层
    • 不管多少维度都拍平,Infinity

14.concat() — 拼接数组

  • 语法:
    • 数组.concat(数组1,数组2,数组3,…)
  • 返回值:
    • 拼接好的数组

15.join() — 把数组内的每一项使用连接符连接为一个字符串

  • 语法:
    • 数组.join(连接符号)
  • 返回值:
    • 是一个字符串类型

16.slice() — 截取字符串

  • 语法:
    • 数组.slice(开始索引,结束索引)
      • 特点:包前不报后
      • 可以写负数就是倒数第几个,等价于 length + 负数
      • 开始索引不写,默认是0
      • 结束索引不写默认是 length
  • 返回值:
    • 一个新数组
    • 存放截取出来的内容

17.indexOf() — 从前向后检索,寻找第一个满足要求的数据

  • 语法:
    • 数组.indexOf(要查找的数据)
    • 数组.indexOf(要查找的数据,开始索引)
  • 返回值:
    • 返回第一个满足要求的数据的索引位置
    • 如果没有返回 -1

18.lastIndexOf() — 从后向前,寻找第一个满足条件的数据

  • 语法:
    • 数组.lastIndexOf(要查找的数据)
    • 数组.lastIndexOf(要查找的数据,开始索引)
  • 返回值:
    • 从后向前检索
    • 返回第一个满足要求的数据的索引
    • 如果没有数据,返回 -1

19.find() — 根据条件查找数组中的数据

  • 语法:
    • 数组.find(function(item,index,arr){})
  • 返回值:
    • 数组中满足条件的第一个
    • 以 return 的形式书写

20.findIndex() — 数组中第一个满足条件的索引位置

  • 语法:
    • 数组.findIndex(function(item,index,arr){})
  • 返回值:
    • 数组中满足条件的第一个索引位置
    • 以 return 的条件书写条件

21.includes() — 查找数组内是否有该数据

  • 语法:
    • 数组.includes(数据)
  • 返回值:布尔值
    • 如果数组中有该数据,返回 true
    • 如果数组中没有该数据 返回 false

22.fill() — 替换,按照索引位置替换数组内指定索引的数据

  • 语法:
    • 数组.fill(要填充的数据,开始索引,结束索引)
      • 开始索引不写默认是 0
      • 结束索引不写默认是最后一位
      • 特点: 索引 ,包前不包后
  • 返回值:
    • ****************** 会改变原始数组 ******************
    • 只能替换现有数据,不可以新增

23.reduce() — 叠加

  • 语法:
    • 数组.reduce(function(prev,item,index,arr){},init)
      • init 如果不写,默认使用数组中 的第一个数据
  • 返回值:
    • 叠加后的结果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值