前端开发中,经常用到JavaScript数组操作,本文以是否改变原数组作分类。
以下为个人总结,当做api直接拿来用的,验证过,不上过多的代码或结果,伙伴们可以自己去验证。
一、不改变原数组的方法
concat(): 连接数组,返回新的数组。
slice(): 截取数组,以索引为届,左闭右开。
split(): 把一个字符串分割成字符串数组。如: ‘a&b&c’.split(“&”) ==> [a,b,c]
join(): 将数组内的元素用某个符号连接起来。如:[a,b,c].join(“-“) ==> “a-b-c”
toString(): 直接把数组转为字符串格式,逗号分开。效果同 arr.join(“,”)
ES6中的解构: newArr=[…a,…b],可以连接若干个数组,原数组不改变。
二、改变原数组的方法
原数组经过这些方法操作之后得到的新结果,即为原数组本身。
push(): 在数组末尾追加一个元素,返回数组长度。
pop(): 在数组末尾删除一个元素,返回被去掉的元素。
length末尾追加: 在数组末尾追加元素的另一种方法,即arr[arr.length],返回被添加的元素。
unshift(): 在数组头部添加一个元素,返回添加的元素。
shift(): 在数组头删除一个元素,返回被删除的元素。
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超过了要替换的元素,则后面多余的全部被删除。返回被替换的元素组成的数组。
sort() : 排序方法,按字符串顺序升序排的。正确顺序(升序): arr.sort((a,b)=>a-b),当a-b返回负值时,函数会把a排序为比100更小的值。如 10-20= -10
reverse(): 反转数组,颠倒原来的顺序,返回改变后的新数组。
Array.prototype.push.apply(arr1,arr2): 在原型上连接数组,将arr2连接在arr1的尾部,参数只能为2个,多了无效。返回数组长度,arr1被改变,arr2不变。 arr1.push.apply(arr1,arr2) 效果相同。
文档持续维护,若有不妥之处,望大家指正或补充。
————————————————
版权声明:本文为CSDN博主「清颖~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/aaqingying/article/details/112759461