JavaScript去除字符串末尾标点及删除末字符的多种实现
本文详细解析在JavaScript中去除字符串末尾标点符号及删除最后一个字符的几种常用方法。重点对比slice、substr和substring三个核心API的参数差异与行为特性,特别是负数索引的处理逻辑。同时涵盖C#风格字符串处理在JS中的等效实现思路,如利用正则表达式或特定方法模拟RTrim和TrimEnd功能,帮助开发者根据具体场景选择最优方案。
需求:去除js字符串末尾的标点符号
原字符串:
Hello World!
目标字符串:
Hello World
一:slice
stringObject.slice(start,end)start : 指定抽取片段的起始下标。若为负数,表示从字符串尾部开始计算位置,即-1代表最后一个字符
end:指定抽取片段的结束下标。若未指定,则提取从start到原字符串结尾的子串。若为负数,表示从字符串尾部开始计算位置
var str = 'Hello World!';
document.write(str.slice(0,str.length-1)); //输出 Hello World二:substr
stringObject.substr(start,length)start : 必需。指定抽取子串的起始下标,必须为数值。若为负数,表示从字符串尾部开始计算位置,即-1代表最后一个字符,-2代表倒数第二个字符
length : 可选。指定子串中的字符数,必须为数值。若省略该参数,则返回从stringObject起始位置到结尾的字串
var str = 'Hello World!';
document.write(str.substr(0,str.length-1)); //输出 Hello World三、substring
stringObject.substring(start,stop)与slice()和substr()方法不同,substring()不接受负的参数
start : 必需。一个非负整数,指定要提取的子串的第一个字符在stringObject中的位置
stop : 可选。一个非负整数,比要提取的子串的最后一个字符在stringObject中的位置多1
若省略该参数,则返回的子串会一直到字符串的结尾
var str = 'Hello World!';
document.write(str.substring(0,str.length)); //输出 Hello World更多用法
<script type="text/javascript">
// 将字符串作为变量
var string = "abcdefghijklmn";
a = string.substring(0, 4)
b = string.substring(1, 6)
c = string.substring(5)
d = string.substring(0)
// 输出新的字符串
// 给定字符串的一部分
document.write(a + "<br>");
document.write(b + "<br>");
document.write(c + "<br>");
document.write(d + "<br>");
</script>输出
abcd bcdef fghijklmn abcdefghijklmn
说明
索引始终以0开头。若索引取为负数,将被视为零;索引不能是小数,若为小数,将被转换为比其小的整数
下面看下JS 删除字符串最后一个字符的几种方法
字符串:string s = "1,2,3,4,5,"
1、用的最多的是Substring
s=s.Substring(0,s.Length-1)
2、用 RTrim
原来只用来删除最后的空格,未仔细查看其它用法,才发现可以直接trim掉一些字符
s=s.ToString().RTrim(',')
扩展 删除空格
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
function ltrim(str){ //删除左边的空格
return str.replace(/(^\s*)/g,"");
}
function rtrim(str){ //删除右边的空格
return str.replace(/(\s*$)/g,"");
}3、用TrimEnd
此方法与RTrim类似,区别在于其传递的是一个字符数组,而RTrim可以是任何有效的字符串
s=s.TrimEnd(',')
//如果要删除"5,",则需要这么写
char[]MyChar={'5',','};
s=s.TrimEnd(MyChar);
//s="1,2,3,4"类似函数:
TrimStart,LTrim等
还有一个TrimToSize对提高性能有微弱的好处....
string.TrimEnd().Remove(string.Length - 2, 1)
string.Remove()总结
以上所述是小编给大家介绍的JS去掉字符串末尾的标点符号及删除最后一个字符的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对本站网站的支持!
什么时候该用JS构造器:与工厂模式、字面量的选择对比
2026-11-05 16:18:22
推荐几款轻量级JS照片墙开源库及对比
2026-11-05 15:56:19
JavaScript递归写法有哪些常见陷阱及避免方法
2026-11-05 14:53:38
JS数组浅拷贝与深拷贝怎么选?场景与方法总结
2026-11-05 14:41:02
p5.js 中 setup() 和 draw() 函数的执行机制详解
2026-11-05 12:32:38
