js中substring和substr两者区别和使用方法


Posted in Javascript onNovember 09, 2015

在开始之前,先回顾下js中下标(数组元素/字符串中字符下标):
下标总是从0开始计数,例如
var arr = [1,2,3];//数组的长度为3,元素下标依次为:0,1,2
arr[0] = 1,arr[1]=2..
字符串类似:如var s = "hello";//字符串长度为5,第一个字符'h'的下标为0,依次类推

js中substring和substr两者区别和使用方法

String.substring( ):用于返回一个字符串的子串
用法如下:string.substring(from, to)
其中from指代要抽去的子串第一个字符在原字符串中的位置
to指代所要抽去的子字符串最后一个字符的后一位(这个参数可以不加)

下面就对String.substring( )做举例

1、string.substring(from):此时相当于从from位置截取到原字符串末尾

var s = "hello";
s.substring(1);//就是从下标为1的字符(这里是'e')开始起到字符串末尾全部截取,最终获得子串"ello"

js中substring和substr两者区别和使用方法

2、string.substring(from, to):从from位置截取到to-1的位置

var s = "hello";
s.substring(1,3);//相当于从位置为1的字符截取到位置为2的字符,得到子串为:"el"

js中substring和substr两者区别和使用方法

String.substr( ):作用也是抽去一个子串,但是它和上面的String.substring( )有所不同
用法如下:string.substr(start, length)
start:指代截取子串开始下标
length:截取子串的长度(可省略)
1、string.substr(start, length):先举个例子来说明:

var s = "hello";
s.substr(1,3);//从下标为1的字符开始截取3个字符长度,最后子串为:ell

js中substring和substr两者区别和使用方法

补充两种特殊情况:
a、第二个参数超过了剩余字符长度

var s = "hello";
s.substr(1,7)//这种情况下默认从,start位置到原字符串末尾,即返回:"ello"

js中substring和substr两者区别和使用方法

b、第一个参数为负数
这种情况,从字符串尾部开始计算,-1指字符串最后一个字符,-2指倒数第二个字符...依次类推

var s = "hello";
s.substr(-3,2)//即从倒数第三个字符开始起截取2个长度,获得:"ll"

js中substring和substr两者区别和使用方法

2、string.substr(start)不带length参数,默认指代从start位置截取到字符串末尾

var s = "hello";
s.substr(3)//"lo"

js中substring和substr两者区别和使用方法

以上就是关于js中substring和substr区别与用法的详细介绍,大家可以结合之前的相关文章进行学习,希望对大家的学习有所帮助。

Javascript 相关文章推荐
ASP中用Join和Array,可以加快字符连接速度的代码
Aug 22 Javascript
IE中radio 或checkbox的checked属性初始状态下不能选中显示问题
Jul 25 Javascript
js移除事件 js绑定事件实例应用
Nov 28 Javascript
window.showModalDialog参数传递中含有特殊字符的处理方法
Jun 06 Javascript
js中this的用法实例分析
Jan 10 Javascript
js实现无限级树形导航列表效果代码
Sep 23 Javascript
js省市区级联查询(插件版&无插件版)
Mar 21 Javascript
Js利用prototype自定义数组方法示例
Oct 20 Javascript
webpack4 处理CSS的方法示例
Sep 03 Javascript
详解Angular6学习笔记之主从组件
Sep 05 Javascript
VUE 单页面使用 echart 窗口变化时的用法
Jul 30 Javascript
详解JS数组方法
Nov 20 Javascript
浅析js中substring和substr的方法
Nov 09 #Javascript
js中substr,substring,indexOf,lastIndexOf,split,replace的用法详解
Nov 09 #Javascript
比较常见的javascript中定义函数的区别
Nov 09 #Javascript
详解JavaScript中的Unescape()和String() 函数
Nov 09 #Javascript
表单验证正则表达式实例代码详解
Nov 09 #Javascript
JS实现网页上随机产生超链接地址的方法
Nov 09 #Javascript
JavaScript获取页面中超链接数量的方法
Nov 09 #Javascript
You might like
用PHP 快速生成 Flash 动画的方法
2007/03/06 PHP
单台服务器的PHP进程之间实现共享内存的方法
2014/06/13 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
2014/07/08 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
2015/02/02 PHP
php加密解密字符串示例
2016/10/13 PHP
phpstudy隐藏index.php的方法
2020/09/21 PHP
JQuery 学习笔记 选择器之二
2009/07/23 Javascript
将CKfinder整合进CKEditor3.0的新方法
2010/01/10 Javascript
javascript中最常用的继承模式 组合继承
2010/08/12 Javascript
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
2013/12/04 Javascript
JavaScript使用Math.Min返回两个数中较小数的方法
2015/04/06 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
js注入 黑客之路必备!
2016/09/14 Javascript
JavaScript获取服务器时间的方法详解
2016/12/11 Javascript
解析JavaScript实现DDoS攻击原理与保护措施
2016/12/26 Javascript
基于JavaScript实现类名的添加与移除
2017/04/23 Javascript
手写Node静态资源服务器的实现方法
2018/03/20 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
2018/08/08 Javascript
详解React中传入组件的props改变时更新组件的几种实现方法
2018/09/13 Javascript
详解vantUI框架在vue项目中的应用踩坑
2018/12/06 Javascript
微信小程序日历组件使用方法详解
2018/12/29 Javascript
[02:10]2018DOTA2亚洲邀请赛赛前采访-Liquid
2018/04/03 DOTA
详解Python的迭代器、生成器以及相关的itertools包
2015/04/02 Python
python的numpy模块安装不成功简单解决方法总结
2017/12/23 Python
Python实现的计算器功能示例
2018/04/26 Python
django orm 通过related_name反向查询的方法
2018/12/15 Python
3种python调用其他脚本的方法
2020/01/06 Python
详解python中的异常和文件读写
2021/01/03 Python
100%法国制造的游戏和玩具:Les Jouets Français
2021/03/02 全球购物
进修护士自我鉴定
2013/10/14 职场文书
参观监狱心得体会
2014/01/02 职场文书
经济管理毕业生求职信
2014/03/15 职场文书
2019教师的学习计划
2019/06/25 职场文书
sql server删除前1000行数据的方法实例
2021/08/30 SQL Server
详解Oracle块修改跟踪功能
2021/11/07 Oracle