JavaScript中的slice、splice、split之间的区别

在js的学习过程中,slice,splice,split这三个api易混淆,通过以下的内容可以了解他们的属性,轻松的区分啦~

目录

split()

splice()

slice()


split()

splite : 它用于将字符串分割成字符串数组。该方法根据指定的分隔符将字符串分割成多个子字符串,并将这些字符串存储在数组中。

(ps:split是属于字符串的方法,输入字符串,输出数组)

用法:

str.split([separator,[limit]])

参数说明:

separator(可选):指定用于分割字符串的分隔符。如果没有提供分隔符,则默认使用空格进行分割。如果分隔符是一个空字符串,则结果数组将只包含一个元素,即原始字符串本身。

limit(可选):指定返回数组的最大长度。如果提供了限制,则最多返回limit个元素。如果没有提供限制,则将返回所有分割的子字符串。

示例:

var str = "apple,banana,orange"; 
var arr = str.split(","); // 使用逗号作为分隔符 
console.log(arr); // 输出:["apple", "banana", "orange"]

在上面的示例中,我们使用逗号作为分隔符将字符串"apple,banana,orange"分割成了数组["apple", "banana", "orange"]。

 var str = "apple,banana,orange";
 var arr = str.split(",",2); // 使用逗号作为分隔符 
 console.log(arr); // 输出:["apple", "banana"]

在上面的示例中,我们将limlit的值设为2,所有返回数组的长度为2

splice()

splice: splice()方法用于在数组中添加/删除项目,然后返回被删除的项目。该方法会直接修改原数组。

(ps:splice是属于数组的方法)

用法:

array.splice(index, deleteCount, item1, ..., itemX)

参数说明:

index(必需):从哪个位置开始添加/删除元素。如果是负数,则表示从数组尾部开始计数的位置。

deleteCount(必需):要删除的元素数量。如果设置为0,则不会删除元素。

item1, ..., itemX(可选):要添加到数组中的新元素。

返回值:

被删除的元素组成的数组。如果没有删除任何元素,则返回一个空数组。

示例:

let fruits = ["apple", "banana", "cherry", "date"]; 
// 删除前两个元素,并添加"mango"和"orange" 
fruits.splice(0, 2, "mango", "orange");
console.log(fruits); // 输出:["mango", "orange", "cherry", "date"]

在上面的示例中,我们删除了前两个元素("apple"和"banana"),并添加了"mango"和"orange"。最终的数组变为["mango", "orange", "cherry", "date"]。

slice()

slice:slice()方法用于提取数组的一部分,并返回新的数组。与splice()不同,slice()不会修改原始数组。

(ps:适用于数组和字符串)

用法:

array.slice([startIndex,[endIndex]])

参数说明:

startIndex(可选):要提取的起始位置的索引。如果是负数,则表示从数组尾部开始计 数的位置。

endIndex(可选):要提取的结束位置的索引(不包括该索引位置的元素)。如果省略该 参数,则提取将延续到数组的末尾。

返回值:

一个包含提取元素的新数组。

let fruits = ["apple", "banana", "cherry", "date"]; 
// 从索引1开始提取,到数组末尾结束
let slicedFruits = fruits.slice(1); 
console.log(slicedFruits); // 输出:["banana", "cherry", "date"]

在上面的示例中,我们从索引1开始提取元素,并提取到数组的末尾,得到新的数组["banana", "cherry", "date"]。原始数组fruits不会被修改。

slice()方法不仅可以用于数组,还可以用于字符串。对于字符串,slice()方法可以提取指定位置的字符,并返回一个新的字符串。

示例:

let str = "hello world";
let slicedStr = str.slice(7);
 // 从索引7开始提取到字符串末尾 
console.log(slicedStr); // 输出:"world"

在上面的示例中,我们从索引7开始提取字符,并提取到字符串的末尾,得到新的字符串"world"。

  • 30
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值