JavaScript常用截取字符串的三种方式用法区别实例解析


Posted in Javascript onMay 15, 2018

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)为止的所有字符

string.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个字符。

string.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()方法传递负值的情况时存在问题,它会返回原始的字符串。

总结

以上所述是小编给大家介绍的JavaScript常用截取字符串的三种方式用法区别实例解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript的一种模块模式
Mar 22 Javascript
js继承 Base类的源码解析
Dec 30 Javascript
jQuery 类twitter的文本字数限制带提示效果插件
Apr 16 Javascript
JavaScript 代码压缩工具小结
Feb 27 Javascript
JS实现的生成随机数的4个函数分享
Feb 11 Javascript
jQuery中slideUp 和 slideDown 的点击事件
Feb 26 Javascript
如何用JavaScript实现动态修改CSS样式表
May 20 Javascript
JavaScript实现同一个页面打开多张图片
Dec 29 Javascript
ng-options和ng-checked在表单中的高级运用(推荐)
Jan 21 Javascript
Node.js+ES6+dropload.js实现移动端下拉加载实例
Jun 01 Javascript
angularjs之$timeout指令详解
Jun 13 Javascript
Vue 项目分环境打包的方法示例
Aug 03 Javascript
vue中keep-alive的用法及问题描述
May 15 #Javascript
react中使用swiper的具体方法
May 15 #Javascript
vue addRoutes实现动态权限路由菜单的示例
May 15 #Javascript
浅谈AngularJS中$http服务的简单用法
May 15 #Javascript
Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案
May 15 #Javascript
解决linux下node.js全局模块找不到的问题
May 15 #Javascript
vue :src 文件路径错误问题的解决方法
May 15 #Javascript
You might like
PHP编写的图片验证码类文件分享
2016/06/06 PHP
Laravel日志用法详解
2016/10/09 PHP
Laravel框架实现多数据库连接操作详解
2019/07/12 PHP
javascript五图轮播切换实用版
2012/08/17 Javascript
使用vue.js开发时一些注意事项
2016/04/27 Javascript
Knockoutjs 学习系列(二)花式捆绑
2016/06/07 Javascript
jQuery自定义元素右键点击事件(实现案例)
2017/04/28 jQuery
浅谈ECMAScript6新特性之let、const
2017/08/02 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
JS实现根据数组对象的某一属性排序操作示例
2019/01/14 Javascript
jQuery动态生成的元素绑定事件操作实例分析
2019/05/04 jQuery
原生js代码能实现call和bind吗
2019/07/31 Javascript
node.js 使用 net 模块模拟 websocket 握手进行数据传递操作示例
2020/02/11 Javascript
js实现鼠标点击飘爱心效果
2020/08/19 Javascript
详解python里使用正则表达式的分组命名方式
2017/10/24 Python
使用实现XlsxWriter创建Excel文件并编辑
2018/05/04 Python
pandas 实现字典转换成DataFrame的方法
2018/07/04 Python
PyCharm代码回滚,恢复历史版本的解决方法
2018/10/22 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
如何利用Python模拟GitHub登录详解
2019/07/15 Python
YUV转为jpg图像的实现
2019/12/09 Python
python with语句的原理与用法详解
2020/03/30 Python
Python代码需要缩进吗
2020/07/01 Python
Html5导航栏吸顶方案原理与对比实现
2020/06/10 HTML / CSS
餐厅总经理岗位职责
2013/12/31 职场文书
《小猫刮胡子》教学反思
2014/02/21 职场文书
《难忘的泼水节》教学反思
2014/02/27 职场文书
中班上学期个人总结
2015/02/12 职场文书
行政介绍信范文
2015/05/04 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
七年级英语教学反思
2016/02/15 职场文书
关于PostgreSQL JSONB的匹配和交集问题
2021/09/14 PostgreSQL
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
2022/06/14 MySQL
React如何使用axios请求数据并把数据渲染到组件
2022/08/05 Javascript