真巧啊,你能看到这个,说明你平时没有上心啊,兄弟姐妹们!!!
话不多说,接下来我来告诉你这四个方法的使用以及注意点,如果您觉得哪里不具体,欢迎评论补充。Q:345057760
1.slice()
slice(start,end): 可以接受两个参数,
start表示当前起始的位置,是必需的,不能缺少。
end表示结束的位置,是可选的,可有可无,如果缺少,表示从开始的位置截取后面所有的数据。
注意,截取始终都是正截取的,如下。
let val = 'abcdefg'
console.log('val.slice(0,2) :>> ', val.slice(0,2));// 'ab'
console.log('val.slice(-2) :>> ', val.slice(-2));// 'fg'
let result1 = val.slice(2,1)
let result2 = val.slice(-1,2)
console.log('result1, result2:>> ',result1, result2);// 没有任何输出,本身参数传入有问题
console.log('val :>> ', val); // 'abcdefg'
从上面结果我们可以得出一个重要的知识,slice会返回一个值,并且不会对原数据产生任何的影响。
slice可以处理的数据有哪些?数组,字符串
2.splice()
slice(start,deleteLength,value): 可以接受三个参数,
start:表示开始需要操作的位置,必需参数。
deleteLength:表示需要操作数据的长度,可选参数。
value:表示需要替换或添加的数据,可选参数。
splice会返回被截取或者被替换的元素,并且会对原数组产生影响。
let val = ['a','b','c','d']
console.log('val.splice(0,2) :>> ', val.splice(0,2));// ['a', 'b']
console.log('val :>> ', val);//['c', 'd']
console.log('val.splice(4,1,f) :>> ', val.splice(4,1,'f'));// []
console.log('val :>> ', val);//['c', 'd', 'f']
console.log('val.splice(1,1,f) :>> ', val.splice(1,1,'f'));// ['d']
console.log('val :>> ', val);// ['c', 'f', 'f']
console.log('val.splice(1,0,g) :>> ', val.splice(1,0,'g'));// []
console.log('val :>> ', val);// ['c', 'g', 'f', 'f']
那么说了这么多,slice和splice有什么区别呢?
1.splice改变原数组,slice不改变原数组。
2.splice除了可以删除之外,还可以插入。
3.splice可传入3个参数,slice接受2个参数。