当我们需要对字符串进行裁剪或切片操作时,JavaScript中的String类提供了两个常用的方法:substring()和slice()。这两种方法都能够将一个字符串切分为多个子串,但它们有一些不同之处。
substring()方法
substring()方法用于将字符串中的一部分截取出来,返回一个新的字符串。其接受两个参数,分别代表子字符串的起始位置和终止位置(不包括终止位置本身),如果只提供一个参数,则从该位置开始截取直到字符串的末尾。
示例一:
let str = "Hello,world!";
let newStr = str.substring(0, 5); // 从0位置开始,截取五个字符
console.log(newStr); // "Hello"
示例二:
let str = "Hello,world!";
let newStr = str.substring(7); // 从7位置开始截取到字符串的末尾
console.log(newStr); // "world!"
需要注意的是,如果第一个参数大于第二个参数,则substring()方法会自动交换这两个参数,使得起始位置在前、终止位置在后。同时,如果参数为负数,则substring()方法会将其转化为0。
slice()方法
slice()方法也是用于将字符串切片,返回一个新的字符串。与substring()方法不同的是,slice()方法接受两个参数,分别代表子字符串的起始位置和终止位置(不包括终止位置本身),如果只提供一个参数,则从该位置开始截取直到字符串的末尾。另外,slice()方法还支持使用负数作为参数,表示从字符串的末尾开始算起。
示例一:
let str = "Hello,world!";
let newStr = str.slice(2, 5); // 从2位置开始,截取到5位置(不包括5)
console.log(newStr); // "llo"
示例二:
let str = "Hello,world!";
let newStr = str.slice(-5); // 从倒数第五个位置开始截取到字符串的末尾
console.log(newStr); // "world!"
需要注意的是,和substring()方法不同的是,如果第一个参数大于第二个参数,则slice()方法返回空字符串。同时,如果参数为负数,则slice()方法会将其转化为从字符串的末尾开始算起的位置。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript中String类的subString()方法和slice()方法 - Python技术站