JavaScript的slice、splice和split方法的区别

JavaScript中slice、splice和split方法我有时候会搞混,傻傻分不清楚,所以想做下笔记

slice

slice方法可以用在数组和字符串

  • 数组 array.slice(start, end)

    该方法对数组进行部分截取,接收两个参数,start是从数组索引0开始,end(可选)就是数组中一个元素的位置值(索引)+1,并且返回一个副本

    var arr = [1, 2, 3, 4, 5, 6]
    var arr2 = arr.slice(0, 4)
    // arr2 = [1, 2, 3, 4]
    

    如果传的是一个负数,则就与数组的长度相加的位置

    	var arr3 = arr.slice(-2)	//6 - 2 = 4
    	// arr3 = [5, 6]
    
  • 字符串 string.slice(start,end)

    slice方法会复制String的一部分来构造一个新的字符串,用法和数组的slice方法一样

    	var str = "Hello World"
    	var str2 = str.slice(0, 5)
    	// str2 = "Hello"
    

splice

array.splice(start, count, item) 接收三个参数,start开始分割的位置(数组索引),count是删除元素的个数, item是额外的元素,存在就追加到数组中

	var arr = [1, 2, 3, 4, 5, 6]
	var arr2 = [7, 8]
	var temp = arr.splice(2, 0, arr2)
	/**
	 *从第2个位置的元素arr[2] = 3 开始, 如果count参数为0就是不删除,arr2新数组
	 *就往arr[2]前面开始插入, 如果count参数大于0,则就删除arr[2]这个元素,再把arr2往旧数组arr[2]的位置插入,并且返回删除的元素
	//arr = [1, 2, 7, 8, 3, 4, 5, 6]
	// temp = ""

split

array.split(separator, limit) 接收两个参数,separator参数可以是一个字符串或者是一个正则表达式,如果是一个空字符串,就会返回一个单字符的数组;limit是可选的,是限制分割的数量

	var str = "123456"
	var arr = str.split("")
	// arr = ["1", "2", "3", "4", "5", "6"]

split()会用在把地址分割

	var url = "http://www.example.com?id=1"
	var search = url.split("?")
	// search = ["http://www.example.com", "id=1"]
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值