js中substring和substr的详细介绍与用法


Posted in Javascript onAugust 29, 2013

1.substring 方法

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

substring(start,end)

开始和结束的位置,从零开始的索引

参数     描述
start     必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop     可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。

返回值

一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。

说明

substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 0。

2.substr 方法

定义和用法

substr 方法用于返回一个从指定位置开始的指定长度的子字符串。

语法

stringObject.substr(start [, length ])

参数    描述
start   必需。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。
length 可选。在返回的子字符串中应包括的字符个数。

说明

如果start为负数,则start=str.length+start。
如果 length 为 0 或负数,将返回一个空字符串。
如果没有指定该参数,则子字符串将延续到stringObject的最后。

举例:

var str = "0123456789";
alert(str.substring(0));------------"0123456789"
alert(str.substring(5));------------"56789"
alert(str.substring(10));-----------""
alert(str.substring(12));-----------""
alert(str.substring(-5));-----------"0123456789"
alert(str.substring(-10));----------"0123456789"
alert(str.substring(-12));----------"0123456789"
alert(str.substring(0,5));----------"01234"
alert(str.substring(0,10));---------"0123456789"
alert(str.substring(0,12));---------"0123456789"
alert(str.substring(2,0));----------"01"
alert(str.substring(2,2));----------""
alert(str.substring(2,5));----------"234"
alert(str.substring(2,12));---------"23456789"
alert(str.substring(2,-2));---------"01"
alert(str.substring(-1,5));---------"01234"
alert(str.substring(-1,-5));--------""
alert(str.substr(0));---------------"0123456789"
alert(str.substr(5));---------------"56789"
alert(str.substr(10));--------------""
alert(str.substr(12));--------------""
alert(str.substr(-5));--------------"56789"
alert(str.substr(-10));-------------"0123456789"
alert(str.substr(-12));-------------"0123456789"
alert(str.substr(0,5));-------------"01234"
alert(str.substr(0,10));------------"0123456789"
alert(str.substr(0,12));------------"0123456789"
alert(str.substr(2,0));-------------""
alert(str.substr(2,2));-------------"23"
alert(str.substr(2,5));-------------"23456"
alert(str.substr(2,12));------------"23456789"
alert(str.substr(2,-2));------------""
alert(str.substr(-1,5));------------"9"
alert(str.substr(-1,-5));-----------""  
Javascript 相关文章推荐
深入理解JavaScript系列(12) 变量对象(Variable Object)
Jan 16 Javascript
一个实用的图片切换支持点击切换和自动轮播
Sep 09 Javascript
js在IE与firefox的差异集锦
Nov 11 Javascript
javascript实现禁止复制网页内容
Dec 16 Javascript
JS实现页面超时后自动跳转到登陆页面
Jan 19 Javascript
JS+CSS实现仿触屏手机拨号盘界面及功能模拟完整实例
May 16 Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
Jan 26 Javascript
jQuery hover事件简单实现同时绑定2个方法
Jun 07 Javascript
微信小程序生成分享海报方法(附带二维码生成)
Mar 29 Javascript
JavaScript中的 new 命令
May 22 Javascript
使用 Element UI Table 的 slot-scope方法
Oct 10 Javascript
vue实现权限控制路由(vue-router 动态添加路由)
Nov 04 Javascript
由点击页面其它地方隐藏div所想到的jQuery的delegate
Aug 29 #Javascript
JavaScript自定义事件介绍
Aug 29 #Javascript
JavaScript包装对象使用介绍
Aug 29 #Javascript
JavaScript作用域链使用介绍
Aug 29 #Javascript
JavaScript 命名空间 使用介绍
Aug 29 #Javascript
JavaScript prototype 使用介绍
Aug 29 #Javascript
JavaScript创建对象的写法
Aug 29 #Javascript
You might like
php数组函数序列之in_array() 查找数组值是否存在
2011/10/29 PHP
PHP __autoload函数(自动载入类文件)的使用方法
2012/02/04 PHP
PHP数组去重的更快实现方式分析
2018/05/09 PHP
php微信公众号开发之校园图书馆
2018/10/20 PHP
php中yar框架实例用法讲解
2020/12/27 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
Extjs学习笔记之三 extjs form更多的表单项
2010/01/07 Javascript
JavaScript 判断判断某个对象是Object还是一个Array
2010/01/28 Javascript
jQuery EasyUI API 中文文档 - DataGrid数据表格
2011/11/17 Javascript
js函数名与form表单元素同名冲突的问题
2014/03/07 Javascript
对Web开发中前端框架与前端类库的一些思考
2015/03/27 Javascript
Bootstrap学习笔记之css样式设计(2)
2016/06/07 Javascript
javascript实现瀑布流动态加载图片原理
2016/08/12 Javascript
JS基于设计模式中的单例模式(Singleton)实现封装对数据增删改查功能
2018/02/06 Javascript
vue过滤器用法实例分析
2019/03/15 Javascript
JS sort方法基于数组对象属性值排序
2020/07/10 Javascript
Python MySQLdb模块连接操作mysql数据库实例
2015/04/08 Python
Python实现提取谷歌音乐搜索结果的方法
2015/07/10 Python
python写一个md5解密器示例
2018/02/23 Python
Python3.5面向对象与继承图文实例详解
2019/04/24 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
2019/06/03 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
django mysql数据库及图片上传接口详解
2019/07/18 Python
python3.7 的新特性详解
2019/07/25 Python
25个CSS3动画按钮和菜单教程分享
2012/10/03 HTML / CSS
美国嘻哈文化生活方式品牌:GLD
2018/04/15 全球购物
我的applet原先好好的, 一放到web server就会有问题,为什么?
2016/05/10 面试题
办公室保洁员岗位职责
2013/12/02 职场文书
优秀实习自我鉴定
2013/12/04 职场文书
学校办公室主任职责
2013/12/27 职场文书
市场开发计划书
2014/05/07 职场文书
法制宣传月活动方案
2014/05/11 职场文书
单位工作证明格式模板
2014/10/04 职场文书
网络研修随笔感言
2015/11/18 职场文书
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android
win10电脑老是死机怎么办?win10系统老是死机的解决方法
2022/08/05 数码科技