针对JS中是否改变原数组的操作方法总结

前端开发中,经常用到JavaScript数组操作,本文以是否改变原数组作分类。
以下为个人总结,当做api直接拿来用的,验证过,不上过多的代码或结果,伙伴们可以自己去验证。

一、不改变原数组的方法

  1. concat(): 连接数组,返回新的数组。
  2. slice(): 截取数组,以索引为届,左闭右开。
  3. split(): 把一个字符串分割成字符串数组。如: ‘a&b&c’.split("&") ==> [a,b,c]
  4. join(): 将数组内的元素用某个符号连接起来。如:[a,b,c].join("-") ==> “a-b-c”
  5. toString(): 直接把数组转为字符串格式,逗号分开。效果同 arr.join(",")
  6. ES6中的解构: newArr=[…a,…b],可以连接若干个数组,原数组不改变。

二、改变原数组的方法

原数组经过这些方法操作之后得到的新结果,即为原数组本身。

  1. push(): 在数组末尾追加一个元素,返回数组长度。
  2. pop(): 在数组末尾删除一个元素,返回被去掉的元素。
  3. length末尾追加: 在数组末尾追加元素的另一种方法,即arr[arr.length],返回被添加的元素。
  4. unshift(): 在数组头部添加一个元素,返回添加的元素。
  5. shift(): 在数组头删除一个元素,返回被删除的元素。
  6. splice(): 用于在指定位置添加、删除、替换元素。
    (1) 删除 arr.splice(index,len): 从索引index处(包括index,该方法都包括index本身,后面不赘述),删除长度为len个元素,返回被删除的元素组成的数组。若只写了index,没有第二个参数,则从index处开始删除后面所有元素。
    (2) 添加 arr.splice(index,0,...items): 从index处添加若干元素,返回[ ]空数组。(可以理解为被替换的元素是空)arr.splice(arr.length,0,…[1,2,3]): 连接数组,在末尾追加一个数组[1,2,3]给原数组。
    (3) 替换 arr.splice(index,len,...items): 从索引index开始,替换 len 个元素,用 items 去代替。若len超过了要替换的元素,则后面多余的全部被删除。返回被替换的元素组成的数组
  7. sort() : 排序方法,按字符串顺序升序排的。正确顺序(升序): arr.sort((a,b)=>a-b),当a-b返回负值时,函数会把a排序为比100更小的值。如 10-20= -10
  8. reverse(): 反转数组,颠倒原来的顺序,返回改变后的新数组。
  9. Array.prototype.push.apply(arr1,arr2): 在原型上连接数组,将arr2连接在arr1的尾部,参数只能为2个,多了无效。返回数组长度,arr1被改变,arr2不变。 arr1.push.apply(arr1,arr2) 效果相同。

文档持续维护,若有不妥之处,望大家指正或补充。

  • 8
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清颖~

您的鼓励让我们一起进步,加油!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值