浅谈Javascript中substr和substring的区别


Posted in Javascript onSeptember 30, 2015

 由于在项目中有需要对字符串进行截取,然后手残使用了IDE自动提示的substr,没想那么多以为substr和substring没多大区别。

然而并不是,且听我一一道来。

1. substr(index, length)

  从起始索引号提取字符串中指定数目的字符。

  substr方法可以传入两个参数 index和length。index是起始位,length是截取的长度。

  当index是个非负整数时:

    a. 如果不传入参数,则得到的还是字符串本身。

        如: "abcdefg".substr() -> "abcdefg"

    b. 如果只传入一个参数,即index,则默认截取到字符串最后一位。

        如: "abcdefg".substr(2) -> "defg".

  当index是个负整数时:

    c. 如果传入一个负整数下标位则从后往前数,起始位为1,到达负整数绝对值的下标位,截取则是从前往后。

        如: "abcdefg".substr(-2) -> "fg"  <=> "abcdefg".substr(-2 + "abcdefg".length)

2. substring(start, end)

  提取字符串中介于两个指定下标之间的字符。

  substring也是传入两个参数,但是这两个参数都是下标数字,下标从0开始计算,截取的长度是这两个下标的差

  可以记作"含头不含尾"

  如: "abcdefg".substring(2,4) -> "cd"

Javascript 相关文章推荐
Javascript 类与静态类的实现(续)
Apr 02 Javascript
javascript模拟的Ping效果代码 (Web Ping)
Mar 13 Javascript
修改js Calendar日历控件 兼容IE9/谷歌/火狐
Jan 04 Javascript
关于JS字符串函数String.replace()
Apr 07 Javascript
js验证输入是否为手机号码或电话号码示例
Dec 30 Javascript
通过正则表达式实现表单验证是否为中文
Feb 18 Javascript
用JavaScript实现页面重定向功能的教程
Jun 04 Javascript
在JavaScript中操作时间之setYear()方法的使用
Jun 12 Javascript
ECMAScript6中Set/WeakSet详解
Jun 12 Javascript
JQuery EasyUI 结合ztrIee的后台页面开发实例
Sep 01 jQuery
JavaScript数据结构之优先队列与循环队列实例详解
Oct 27 Javascript
跟混乱的页面弹窗说再见
Apr 11 Javascript
jQuery复制表单元素附源码分享效果演示
Sep 30 #Javascript
js实现创建删除html元素小结
Sep 30 #Javascript
node.js下LDAP查询实例分享
Sep 30 #Javascript
Javascript中replace()小结
Sep 30 #Javascript
利用jQuery实现漂亮的圆形进度条倒计时插件
Sep 30 #Javascript
谈谈JavaScript异步函数发展历程
Sep 29 #Javascript
JavaScript 对象深入学习总结(经典)
Sep 29 #Javascript
You might like
PHP 面向对象 PHP5 中的常量
2010/05/05 PHP
精美漂亮的php分页类代码
2013/04/02 PHP
js 模拟实现类似c#下的hashtable的简单功能代码
2010/01/24 Javascript
JavaScript编程开发中的五个实用小技巧
2010/07/22 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
2011/07/10 Javascript
JQuery each()函数如何优化循环DOM结构的性能
2012/12/10 Javascript
js固定DIV高度,超出部分自动添加滚动条的简单方法
2013/07/10 Javascript
javascript的alert box在java中如何显示多行
2014/05/18 Javascript
Bootstrap 模态框实例插件案例分析
2016/12/28 Javascript
Ionic3实现图片瀑布流布局
2017/08/09 Javascript
Angular实现点击按钮控制隐藏和显示功能示例
2017/12/29 Javascript
angularjs 页面自适应高度的方法
2018/01/17 Javascript
小程序获取周围IBeacon设备的方法
2018/10/31 Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧滑动,右侧不动)
2019/01/23 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
vuex + keep-alive实现tab标签页面缓存功能
2019/10/17 Javascript
原生JS实现留言板
2020/03/26 Javascript
Vue双向绑定实现原理与方法详解
2020/05/07 Javascript
Javascript如何递归遍历本地文件夹
2020/08/06 Javascript
基于vue 动态菜单 刷新空白问题的解决
2020/08/06 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
python超简单解决约瑟夫环问题
2015/05/12 Python
python计算auc指标实例
2017/07/13 Python
Python 中的Selenium异常处理实例代码
2018/05/03 Python
python实现验证码识别功能
2018/06/07 Python
python直接获取API传递回来的参数方法
2018/12/17 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
2019/03/30 Python
python 遍历pd.Series的index和value
2019/11/26 Python
pyecharts绘制中国2020肺炎疫情地图的实例代码
2020/02/12 Python
Selenium常见异常解析及解决方案示范
2020/04/10 Python
群众路线教育实践活动心得体会(四风)
2014/11/03 职场文书
处级干部考察材料
2014/12/24 职场文书
民事辩护词范文
2015/05/21 职场文书
入党心得体会
2019/06/20 职场文书
如何用JS实现简单的数据监听
2021/05/06 Javascript