js 哪些方法改变原数组

105 阅读1分钟

js数组 有很多方法,其中有些方法可以改变数组本身,有些方法对原数组没有影响, 做一下梳理总结

改变原数组的方法:

  • splice
  • copyWithin
  • push
  • pop
  • unshift
  • shift
  • fill
  • sort
  • reverse

不改变原数组的方法有:

  • concat(value0, value1, /* … ,*/ valueN)=》返回新的array实例, value0指数组或值

  • isArray 静态方法用于确定传递的值是否是一个数组, 用法Array.isArray(arr1)

  • join(separator?), 用separator将数组拼接成字符串,返回该字符串,不传separator,默认空格来分割

  • Array.from(arrayLike, mapFn?, thisArg?), 一个静态方法,将可迭代对象类数组对象创建一个新的浅拷贝数组

  • Array.fromAsync(arrayLike, mapFn?, thisArg?) 静态方法可以由一个异步可迭代对象可迭代对象类数组对象创建一个新的、浅拷贝的 Array 实例。

  • toReverse()

  • toSorted()

  • slice()

  • toSpliced(), 返回一个新数组,作用与splice方法类似,不改变原数组

  • Array.of()  静态方法通过可变数量的参数创建一个新的 Array 实例,而不考虑参数的数量或类型

查找:

  • findIndex
  • findLastIndex
  • find
  • findLast
  • indexOf
  • filter
  • inclueds

遍历:

  • forEach
  • map
  • flatMap
  • every
  • some
  • keys
  • values
  • entries
  • reduce
  • reduceRight
  • flat,返回一个新数组
  • toString
  • toLocaleString
  • with 返回一个新数组
  • to