vue截取一个字符串_字符串截取方法

本文详细介绍了JavaScript中三种常用的字符串操作方法:substring(), substr() 和 slice()。对比了它们在正负索引及不同参数情况下的行为差异,帮助开发者更好地理解和使用这些方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

**stringObject.substring(start,stop) 用于提取字符串中介于两个指定下标之间的字符。**

start必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。

stop可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。

start从0开始 到stop(不包含stop)结束 不接受负的参数。

**stringObject.substr(start,length)可在字符串中抽取从start下标开始的指定数目的字符**

start 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。

length 可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。

**stringObject.slice(start,end)提取字符串的某个部分,并以新的字符串返回被提取的部分**

start 要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。

end 紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。

返回新的字符串包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符

[?](https://www.jb51.net/article/140191.htm#)

12345678910string.slice()string.substring()string.substr()var stringValue = “hello world”;alert(stringValue.slice(3));     //”lo world”alert(stringValue.substring(3));   //”lo world”alert(stringValue.substr(3));    //”lo world”alert(stringValue.slice(3,7));     //”lo w”alert(stringValue.substring(3,7));  //”lo w”alert(stringValue.substr(3,7));    //”lo worl”

三者如果只有一个参数n 则会从第n个位置开始返回剩余字符串(从0开始计算位置)

如果有两个参数n,m,slice与substring会从第n个位置开始返回到第m个位置(不包括第m位置)的字符串,而substr会返回从第n个位置开始的m个字符。

[?](https://www.jb51.net/article/140191.htm#)

12345678910string.slice()string.substring()string.substr()var stringValue = “hello world”;alert(stringValue.slice(-3));     //”rld”alert(stringValue.substring(-3));   //”hello world”alert(stringValue.substr(-3));    //”rld”alert(stringValue.slice(3,-4));     //”lo w”alert(stringValue.substring(3,-4));  //”hel”alert(stringValue.substr(3,-4));    //”"(空字符串)

当参数是负值情况下,slice将传入负值与字符串长度(string.length)相加,substr会将负的第一个参数加上字符串长度,第二个转换为0,substring会将所有负值都转换成0。

IE的JavaScript实现在处理向substr()方法传递负值的情况时存在问题,它会返回原始的字符串。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值