slice与splice的用法区别
clice()
定义:从已有的数组里面选择你所需要的某段数据
用法:array(start,end)
- start表示从何处开始选取,end表示从何处开始结束选取,表示一个选取的范围
- start可以为负数,此时它规定从数组尾部开始算起的位置。也就是-1 ,指最后一个元素,-2 指倒数第二个元素,以此类推
- end如果没有被指定参数,数组会包含从 start 到最后一个数组元素的所有元素
- slice()方法不会修改数组本身,而是返回所选取范围的数组元素。如果想删除数组中的某一个元素,需要使用splice()
var arr = ["我","你","他"]; console.log(arr.alice(0,1)) ["我"] var arr = ["我","你","他"]; console.log(arr.alice(1)) ["你","他"]
splice()
定义:从数组中添加或删除元素,然后返回被删除的元素
用法:array.splice(index,nums,newObj1,...,newObjn)
- index表示从什么位置开始添加或删除数组元素
- nums表示删除的元素数量,如果为0,则表示不删除数组元素
- newobj,.....,newobjn表示新增的数组元素
- splice()方法会改变原始数组
插入数组
var arr = ["我","你","他","我们"]; arr.splice(2,0,'你们'); console.log(arr); ["我", "你", "你们", "他", "我们"]
删除数组
var arr = ["我","你","他","我们"]; var delarr = arr.splice(2,1,'你们'); console.log(delarr); console.log(arr) ["他"] ["我","你","我们"]