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 相关文章推荐
js下弹出窗口的变通
Apr 18 Javascript
js图片延迟加载的实现方法及思路
Jul 22 Javascript
js 判断计算字符串长度/判断空的简单方法
Aug 05 Javascript
iframe的父子窗口之间的对象相互调用基本用法
Sep 03 Javascript
jQuery源码分析之Callbacks详解
Mar 13 Javascript
Bootstrap表单简单实现代码
Mar 06 Javascript
微信小程序实战之登录页面制作(5)
Mar 30 Javascript
Node.js中环境变量process.env的一些事详解
Oct 26 Javascript
通过vue-cli来学习修改Webpack多环境配置和发布问题
Dec 22 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
Aug 03 jQuery
vue2.0基于vue-cli+element-ui制作树形treeTable
Apr 30 Javascript
微信小程序多列表渲染数据开关互不影响的实现
Jun 05 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
基于文本的访客签到簿
2006/10/09 PHP
一个简单的自动发送邮件系统(一)
2006/10/09 PHP
PHP实现将textarea的值根据回车换行拆分至数组
2015/06/10 PHP
PHP缓冲区用法总结
2016/02/14 PHP
PHPStrom 新建FTP项目以及在线操作教程
2016/10/16 PHP
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
js 单引号 传递方法
2009/06/22 Javascript
Ext.MessageBox工具类简介
2009/12/10 Javascript
js简单的表格添加行和删除行操作示例
2014/03/31 Javascript
javascript作用域和闭包使用详解
2014/04/25 Javascript
简单讲解AngularJS的Routing路由的定义与使用
2016/03/05 Javascript
浅析jQuery 遍历函数,javascript中的each遍历
2016/05/25 Javascript
JavaScript生成.xls文件的代码
2016/12/22 Javascript
详解Vue2+Echarts实现多种图表数据可视化Dashboard(附源码)
2017/03/21 Javascript
JavaScrpt判断一个数是否是质数的实例代码
2017/06/11 Javascript
JS中实现一个下载进度条及播放进度条的代码
2019/06/10 Javascript
多个vue子路由文件自动化合并的方法
2019/09/03 Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
2019/09/03 Javascript
使用axios请求接口,几种content-type的区别详解
2019/10/29 Javascript
js实现微信聊天界面
2020/08/09 Javascript
Java 生成随机字符的示例代码
2021/01/13 Javascript
[33:17]OG vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
剖析Python的Twisted框架的核心特性
2016/05/25 Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
2016/09/19 Python
python reduce 函数使用详解
2017/12/05 Python
详解Django-restframework 之频率源码分析
2019/02/27 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
python实现扑克牌交互式界面发牌程序
2020/04/22 Python
使用html5+css3来实现slider切换效果告别javascript+css
2013/01/08 HTML / CSS
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
iHerb中文官网:维生素、保健品和健康产品
2018/11/01 全球购物
小学假期安全广播稿
2014/09/28 职场文书
高考诚信考试承诺书
2015/04/29 职场文书
在校证明模板
2015/06/17 职场文书
五一晚会主持词
2015/07/01 职场文书
Vue.js中v-for指令的用法介绍
2022/03/13 Vue.js