在JavaScript字符串操作中,substr()和substring()是两个常用的函数,都用来截取字符串。但在具体应用场景和实现方式有所不同,因此需要深入理解其差异。
深入理解JS中的substr和substring
在JavaScript字符串操作中,substr()
和substring()
是两个常用的函数,都用来截取字符串。但在具体应用场景和实现方式有所不同,因此需要深入理解其差异。
substr()
substr()
函数接受两个参数,第一个参数是截取的起始位置,第二个参数是截取的长度。如果省略第二个参数,则默认截取至字符串的尾部。该函数也可以接受负数参数,表示从字符串尾部开始计数。
示例1:
let str = 'Hello, world!';
let subStr = str.substr(7, 5);
console.log(subStr); // 输出 "world"
在上面的例子中,substr(7, 5)
表示从第7个位置(从0开始计数)开始,截取长度为5的字符串。因此输出结果为"world"。
示例2:
let str='Hello world!';
let subStr=str.substr(-6,2);
console.log(subStr);//输出:'ld'
在上面的例子中,substr()
的第一个参数为负数,表示从字符串尾部开始截取,起始位置为倒数第6位(l字母),2
表示截取的长度,即从上一个起始位置开始截取两位,输出结果为"ld"。
substring()
与substr()
类似,substring()
也用来截取字符串,但它接受两个参数,第一个参数是截取的起始位置,第二个参数是截取的终止位置(不包含终止位置本身)。如果省略第二个参数,则默认截取至字符串的尾部。substring()
不支持负数参数。
示例1:
let str = 'Hello, world!';
let subStr = str.substring(7, 12);
console.log(subStr); // 输出 "world"
在上面的例子中,substring(7, 12)
表示从第7个位置(从0开始计数)开始截取,到第12个位置(不包含第12个位置),因此输出结果为"world"。
示例2:
let str='Hello world!';
let subStr=str.substring(6);
console.log(subStr);//输出:'world!'
在上面的例子中,substring()
的第一个参数表示从截取的起始位置,即位置6开始截取,由于省略了第二个参数,因此截取到了字符串尾部,输出结果为"world!"。
总结
substr()
根据起始位置和长度截取字符串,支持负数参数,即从字符串尾部开始计数。substring()
根据起始位置和终止位置截取字符串,不支持负数参数。- 两者的区别在于第二个参数的含义,
substr()
表示截取的长度,substring()
表示截取的终止位置。 - 除非有特别需求,建议使用
substring()
函数。
本文标题为:深入理解JS中的substr和substring
基础教程推荐
- 「开源免费」基于Vue和Quasar的前端SPA项目crudapi后台管理系统实战之动态表单设计器(五) 2023-10-08
- ajax跳转到新的jsp页面的方法 2023-02-14
- 关于 internet explorer:浏览器特定的 css 属性 2022-09-21
- vue文章下载功能实现 2023-10-08
- JavaScrip简单数据类型隐式转换的实现 2023-07-09
- 微信小程序宿主环境基础介绍 2022-10-22
- 解决uni-app打包安卓app在平板或分辨率高的模拟器下不宽屏显示问题 2023-08-29
- vue项目打包后,favorite.icon不见了 2023-10-08
- 定单管理上 JS表格排序第1/2页 2023-11-30
- js实现touch移动触屏滑动事件 2023-11-30