一、substr()函数的使用
字符串的截取是编程中最常见的操作之一,JS提供了多种常用的截取字符串的函数,下面我们主要学习一下substr()函数。
substr()函数接收两个参数,第一个参数表示要截取的字符串的起始位置,第二个参数表示要截取的长度。比如:
let str = 'Lorem ipsum dolor sit amet';
let subStr = str.substr(6, 5);
console.log(subStr);
//输出:ipsum
上述代码的作用是从字符串“Lorem ipsum dolor sit amet”中截取从第7个字符开始,长度为5个字符的子串,即“ipsum”。需要注意的是,第一个参数是从0开始索引的,而不是从1开始索引的。如果第二个参数被省略,则从起始位置一直截取到字符串结尾。
同时,substr()函数也支持负数作为参数,如下所示:
let str = 'Lorem ipsum dolor sit amet';
let subStr = str.substr(-4);
console.log(subStr);
//输出:amet
上述代码的作用是从字符串“Lorem ipsum dolor sit amet”中截取从倒数第4个字符开始的子串,即“amet”。负数表示从字符串末尾倒数第几个字符开始截取。
二、substring()函数的使用
JS的另一个常用的截取字符串的函数是substring()函数。
substring()函数接收两个参数,第一个参数表示起始位置,第二个参数表示截取的终止位置(不包含终止位置的字符)。如下所示:
let str = 'Lorem ipsum dolor sit amet';
let subStr = str.substring(6, 11);
console.log(subStr);
//输出:ipsum
上述代码的作用是从字符串“Lorem ipsum dolor sit amet”中截取从第7个字符(包含)开始,到第12个字符(不包含)结束的子串,即“ipsum”。
需要注意的是,如果第一个参数大于第二个参数,则substring()函数会自动交换两个参数的位置,并返回相同的子串。而且,如果参数是负数或者不传参数,则会被视为0。
三、slice()函数的使用
除了substr()和substring()函数,JS还提供了另一个常用的截取字符串的函数slice()。
slice()函数和substring()函数的功能类似,也有两个参数,第一个参数表示起始位置,第二个参数表示终止位置(不包含终止位置的字符)。如下所示:
let str = 'Lorem ipsum dolor sit amet';
let subStr = str.slice(6, 11);
console.log(subStr);
//输出:ipsum
上述代码的作用和前面substring()函数一样,从字符串“Lorem ipsum dolor sit amet”中截取从第7个字符(包含)开始,到第12个字符(不包含)结束的子串,即“ipsum”。
值得注意的是,slice()函数也支持负数作为起始位置和终止位置。如果起始位置是负数,表示从字符串末尾倒数第几个字符开始截取。如果终止位置是负数,表示从字符串末尾倒数第几个字符结束截取。
四、总结
以上就是JS常用的三种字符串截取函数的使用方法。当然,对于一些复杂的字符串截取需求,我们可能需要用到正则表达式等高级方法。
需要注意的是,在使用这些函数时,我们必须要小心处理参数的含义,否则很容易引起不必要的错误。另外,由于字符串是不可变的,因此这些函数并不会修改原来的字符串,而是返回一个新的字符串。
最后,我们建议在实际编程之前,请务必进行充分的测试,以确保你的代码能够正确地处理各种边界情况。