javascript中substring()、substr()、slice()的区别


Posted in Javascript onAugust 30, 2015

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 相关文章推荐
asp批量修改记录的代码
Jun 25 Javascript
JQuery扩展插件Validate 1 基本使用方法并打包下载
Sep 05 Javascript
js编码、解码函数介绍及其使用示例
Sep 05 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
Jun 06 Javascript
JavaScript使用function定义对象并调用的方法
Mar 23 Javascript
js实现跨域的方法实例详解
Jun 24 Javascript
BootStrap实用代码片段之一
Mar 22 Javascript
requireJS使用指南
Apr 27 Javascript
jQuery实现的跨容器无缝拖动效果代码
Jun 21 Javascript
Bootstarp基本模版学习教程
Feb 01 Javascript
全面分析JavaScript 继承
May 30 Javascript
JavaScript流程控制(循环)
Dec 06 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
Aug 30 #Javascript
javascript中sort() 方法使用详解
Aug 30 #Javascript
javascript中的正则表达式使用详解
Aug 30 #Javascript
jQuery鼠标事件汇总
Aug 30 #Javascript
简单谈谈javascript中的变量、作用域和内存问题
Aug 30 #Javascript
jquery专业的导航菜单特效代码分享
Aug 29 #Javascript
js实现基于正则表达式的轻量提示插件
Aug 29 #Javascript
You might like
PHP4 与 MySQL 数据库操作函数详解
2006/10/09 PHP
解析PHP中的unset究竟会不会释放内存
2013/07/18 PHP
php sybase_fetch_array使用方法
2014/04/15 PHP
php定时执行任务设置详解
2015/02/06 PHP
php使用递归函数实现数字累加的方法
2015/03/16 PHP
php给图片添加文字水印方法汇总
2015/08/27 PHP
ThinkPHP进程计数类Process用法实例详解
2015/09/25 PHP
jquery dialog键盘事件代码
2010/08/01 Javascript
理解JSON:3分钟课程
2011/10/28 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
2013/12/04 Javascript
JS三级可折叠菜单实现方法
2016/02/29 Javascript
jQuery简单实现遍历单选框的方法
2017/03/06 Javascript
Node.js搭建WEB服务器的示例代码
2018/08/15 Javascript
微信小程序实现文字从右向左无限滚动
2020/11/18 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
vue实现拖拽效果
2019/12/23 Javascript
Vue中fragment.js使用方法小结
2020/02/17 Javascript
Python中函数的多种格式和使用实例及小技巧
2015/04/13 Python
编写Python脚本来实现最简单的FTP下载的教程
2015/05/04 Python
python学习数据结构实例代码
2015/05/11 Python
浅析Python 中整型对象存储的位置
2016/05/16 Python
基于Python和Scikit-Learn的机器学习探索
2017/10/16 Python
Python编程产生非均匀随机数的几种方法代码分享
2017/12/13 Python
Python使用win32com模块实现数据库表结构自动生成word表格的方法
2018/07/17 Python
Python对excel文档的操作方法详解
2018/12/10 Python
Python闭包思想与用法浅析
2018/12/27 Python
python opencv摄像头的简单应用
2019/06/06 Python
Python统计分析模块statistics用法示例
2019/09/06 Python
浅谈python 中的 type(), dtype(), astype()的区别
2020/04/09 Python
Python如何执行精确的浮点数运算
2020/07/31 Python
HTML5地理定位与第三方工具百度地图的应用
2016/11/17 HTML / CSS
HTML5 常见面试题之PC端和移动端区别介绍
2018/01/22 HTML / CSS
教师自荐信范文
2013/12/09 职场文书
2014爱耳日宣传教育活动总结
2014/03/09 职场文书
岳麓书院导游词
2015/02/03 职场文书
JavaScript实现酷炫的鼠标拖尾特效
2022/02/18 Javascript