📅  最后修改于: 2023-12-03 15:01:41.029000             🧑  作者: Mango
有时候我们需要在 JavaScript 中从字符串中删除最后一个字符,可能是因为用户输入了多余的逗号或者是因为我们需要去除一些特定的字符。下面是一些实现这个目标的方法:
slice
方法slice
方法接受两个参数,第一个参数是要截取的开始位置,第二个参数是要截取的结束位置。如果只提供一个参数,那么就会从这个位置一直截取到字符串的末尾。因此,我们可以使用这个方法来删除最后一个字符,示例代码如下:
let str = 'Hello World!';
str = str.slice(0, -1);
console.log(str); // Output: "Hello World"
这样做的原理是从字符串开头开始截取,到倒数第二个字符结束,将得到一个不包含最后一个字符的新字符串。
substring
方法substring
方法与 slice
方法很相似,也需要两个参数,但是区别在于,如果第一个参数大于第二个参数,substring
方法会交换这两个参数。因此,我们可以将第一个参数设置为 0,将第二个参数设置为字符串的长度减一,就可以删除最后一个字符,示例代码如下:
let str = 'Hello World!';
str = str.substring(0, str.length - 1);
console.log(str); // Output: "Hello World"
这样做的原理是从字符串开头开始截取,到字符串长度减一的位置结束,将得到一个不包含最后一个字符的新字符串。
substr
方法substr
方法也需要两个参数,第一个参数是要截取的开始位置,第二个参数是要截取的长度。如果第二个参数为空或者是负数,那么就会从第一个参数的位置一直截取到字符串的末尾。因此,我们可以将第二个参数设置为 -1,就可以删除最后一个字符,示例代码如下:
let str = 'Hello World!';
str = str.substr(0, str.length - 1);
console.log(str); // Output: "Hello World"
这样做的原理是从字符串开头开始截取,截取的长度为字符串长度减一,将得到一个不包含最后一个字符的新字符串。
最后一个方法是使用正则表达式,我们可以使用 replace
方法来替换字符串中最后一个字符,示例代码如下:
let str = 'Hello World!';
str = str.replace(/.$/, '');
console.log(str); // Output: "Hello World"
这样做的原理是使用正则表达式 /$/
匹配字符串末尾的位置,然后用一个空字符串来替换它,这样就相当于删除了字符串中的最后一个字符。