slice splice split 的区别?

slice splice split 的区别?

1、slice(start,[end])

slice(start,[end])方法:该方法是对数组进行部分截取,该方法返回一个新数组

  • 参数start是截取的开始数组索引,end参数等于你要取的最后一个字符的位置值加上1(可选)。
  • 包含了源函数从start到 end 所指定的元素,但是不包括end元素,比如a.slice(0,3);
  • 如果出现负数就把负数与长度相加后再划分。
  • slice中的负数的绝对值若大于数组长度就会显示所有数组
  • 若参数只有一个,并且参数大于length,则为空。
  • 如果结束位置小于起始位置,则返回空数组,返回的个数是end-start的个数,不会改变原数组
<script>
    var arr = [1,2,3,4,5,6]
console.log(arr.slice(3))//[4,5,6] 从下标为0的到3,截取3之后的数
console.log(arr.slice(0,3))//[1,2,3] 从下标为0的地方截取到下标为3之前的数
console.log(arr.slice(0,-2))//[1,2,3,4]
console.log(arr.slice(-4,4))//[3,4]
console.log(arr.slice(-7))//[1,2,3,4,5,6]
console.log(arr.slice(-3,-3))// []
console.log(arr.slice(8))//[]
</script>

小结:

  • slice的参数如果是正数就从左往右数,如果是负数的话就从右往左边数,
  • 截取的数组与数的方向一致,如果是2个参数则截取的是数的交集,没有交集则返回空数组
  • slice也可以切割字符串,用法和数组一样,但要注意空格也算字符

2、splice(start,deletecount,item)

splice:移除,splice方法从array中移除一个或多个数组,并用新的item替换它们。

  • start:起始位置
  • deletecount:删除位数
  • item:替换的item
  • 返回值为被删除的字符串
  • 如果有额外的参数,那么item会插入到被移除元素的位置上。
<script>
// var a=['a','b','c']; 
// var b=a.splice(1,1,'e','f'); 
// console.log(a) //['a', 'e', 'f', 'c']
// console.log(b) //['b']

 var a = [1, 2, 3, 4, 5, 6];
console.log("被删除的为:",a.splice(1, 1, 8, 9)); //被删除的为:2
console.log("a数组元素:",a); //1,8,9,3,4,5,6

console.log("被删除的为:", a.splice(0, 2)); //被删除的为:1,2
console.log("a数组元素:", a) //3,4,5,6

console.log("被删除的为:", a.splice(1, 0, 2, 2)) //插入 第二个数为0,表示删除0个  
console.log("a数组元素:", a) //1,2,2,2,3,4,5,6
</script>

3、 split(字符串)

string.split(separator,limit):split方法把这个string分割成片段来创建一个字符串数组。

  • 可选参数limit可以限制被分割的片段数量。
  • separator参数可以是一个字符串或一个正则表达式。
  • 如果separator是一个空字符,会返回一个单字符的数组,不会改变原数组。
var a="0123456";  
var b=a.split("",3);  
console.log(b);//b=["0","1","2"]
// 注意:String.split() 执行的操作与 Array.join 执行的操作是相反的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值