详解JS中的join,splice,slice,split的区别

写在前面:有很多事情,很久没有学习关于web的知识了,由于某些原因,最近又拿起来了,博客上面也会记录相应的学习遇到的问题。

 

今天讲关于JS中几个比较容易混淆的基本方法:

1.join:

join()方法用于把数组中的所有元素通过指定的分隔符分隔之后,再放入一个字符串。

栗子:

<script type="text/javascript">

var arr = new Array(3)

arr[0] = "George"

arr[1] = "John"

arr[2] = "Thomas"

document.write(

arr.join()

)

</script>

运行结果:

George,John,Thomas

 2.split

split()方法用于把一个字符串以特定字符分割成字符串数组并返回。

第一个参数是指定的分割字符;字符存在于字符串中,且分割后不存在于字符串数组中。

第二个参数是指定分割之后字符串数组的长度。(可选)

栗子:

<script type="text/javascript">
var str="How are you doing today?"
document.write(str.split(" ") + "<br />")
document.write(str.split("") + "<br />")
document.write(str.split(" ",3))
</script>

运行结果:

How,are,you,doing,today?
H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
How,are,you

3.slice

slice()方法从已有的数组中返回特定的元素。

第一个参数是开始索引(从0开始)

第二个参数是结束索引的下一个(可选,默认到最后一个)

栗子:

<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
document.write(
arr.slice(2,4)
 + "<br />")
document.write(arr)
</script>

运行结果:

George,John,Thomas,James,Adrew,Martin
Thomas,James
George,John,Thomas,James,Adrew,Martin

4.splice

splice()方法从数组中添加/删除元素,并返回被删除的元素。

第一个参数代表开始删除的位置,第二个参数代表删除个数,第三个参数为添加的元素(元素添加在开始删除的位置之前)。

栗子:

<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,0,"William")
document.write(arr + "<br />")
</script>

运行结果:

George,John,Thomas,James,Adrew,Martin
George,John,William,Thomas,James,Adrew,Martin

 

<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,1,"William")
document.write(arr)
</script>

运行结果:

George,John,Thomas,James,Adrew,Martin
George,John,William,James,Adrew,Martin

<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,3,"William")
document.write(arr)
</script>

运行结果:

George,John,Thomas,James,Adrew,Martin
George,John,William,Martin 

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JavaScriptsplice()和slice()是用于处理数组的方法,它们有不同的功能和使用方式。 splice()方法用于从数组删除、替换或添加元素。它可以接受两个参数,第一个参数是要操作的起始位置,第二个参数是要删除或替换的元素数量。如果第二个参数为0,则不删除任何元素。除了这两个参数外,splice()方法还可以接受多个可选参数,用于向数组插入新元素。splice()方法会返回被删除的元素组成的数组。这个方法会改变原始数组。 slice()方法用于从原始数组提取指定的元素,然后返回一个新的数组。它接受两个参数,第一个参数是要提取的起始位置,第二个参数是要提取的结束位置(不包括结束位置的元素)。如果省略第二个参数,则会提取从起始位置到数组末尾的所有元素。与splice()方法不同,slice()方法不会改变原始数组。 总结而言,splice()方法用于修改原始数组,可以删除、替换和添加新元素,并返回被删除的元素组成的数组。而slice()方法用于提取原始数组的元素并创建一个新的数组,不改变原始数组。 ### 回答2: 在JavaScriptspliceslice是用来操作数组的两个方法,它们具有不同的功能和用途。 splice()方法用于向数组插入、删除或替换元素,并返回被删除的元素。它接受三个参数:起始索引、删除的元素个数和可选的插入的新元素。起始索引表示删除或插入的起始位置,删除的元素个数表示要删除的元素数量,可选的插入的新元素表示要插入的新元素。splice()方法会修改原始数组。 slice()方法用于从原始数组提取出一个新的数组,并返回该新数组。它接受两个参数:起始索引和可选的结束索引。起始索引表示提取的起始位置,可选的结束索引表示提取的结束位置(不包括该位置)。如果不传入结束索引,则slice()方法会提取从起始索引到数组末尾的所有元素。slice()方法不会修改原始数组。 因此,splice()方法用于修改原始数组,可以删除、插入或替换元素;而slice()方法则用于创建一个原始数组的副本,只提取出需要的元素。两者的主要区别在于splice()方法会改变原始数组,而slice()方法不会改变原始数组。 举个例子来说明:假设有一个数组[1, 2, 3, 4, 5],我们想要删除索引为2的元素并插入新元素6,可以使用splice(2, 1, 6),结果会修改原始数组为[1, 2, 6, 4, 5]。而如果我们使用slice(2, 3),则会返回一个新数组[3],原始数组不变。 综上所述,splice()和slice()方法在JavaScript具有不同的功能和用途,开发者需要根据实际需求选择使用。 ### 回答3: spliceslice是JavaScript数组的两个常用方法,它们的功能和用法有一些不同。 splice方法是对数组进行修改的方法,它可以删除、替换或添加元素到数组splice方法接受两个参数,第一个参数表示要操作的元素的起始位置,第二个参数表示要删除的元素个数。可以通过在第二个参数位置添加元素来实现替换或添加操作。splice方法会返回被删除的元素组成的新数组。 slice方法是对数组进行截取的方法,它会返回一个新的数组,包含原数组从起始位置到结束位置之间的元素,不会改变原数组。slice方法接受两个参数,第一个参数表示截取的起始位置(包括该位置的元素),第二个参数表示截取结束的位置(不包括该位置的元素)。如果没有指定第二个参数,则截取到数组的最后一个元素。 要注意的是,splice方法会修改原数组,而slice方法不会修改原数组。所以当我们想要修改数组时,可以使用splice;当想要得到一个截取后的新数组时,可以使用slice。 例如,如果有一个数组arr = [1, 2, 3, 4, 5],我们可以使用arr.splice(1, 2, 6, 7)来删除数组索引为1的元素,并替换为6和7,然后arr将变为[1, 6, 7, 4, 5]。而如果我们使用arr.slice(1, 4),则会返回一个新的数组[2, 3, 4],而原数组arr不变。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值