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 相关文章推荐
javascript 出生日期和身份证判断大全
Nov 13 Javascript
基于jQuery的投票系统显示结果插件
Aug 12 Javascript
jQuery+JSON+jPlayer实现QQ空间音乐查询功能示例
Jun 17 Javascript
php中给js数组赋值方法
Mar 10 Javascript
jquery分页对象使用示例
Apr 01 Javascript
Javascript学习笔记之 对象篇(三) : hasOwnProperty
Jun 24 Javascript
JavaScript在浏览器标题栏上显示当前日期和时间的方法
Mar 19 Javascript
基于iScroll实现内容滚动效果
Mar 21 Javascript
简单说说如何使用vue-router插件的方法
Apr 08 Javascript
详解vue+axios给开发环境和生产环境配置不同的接口地址
Aug 16 Javascript
Layui Table js 模拟选中checkbox的例子
Sep 03 Javascript
jQuery 移除事件的方法
Jun 20 jQuery
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
为PHP初学者的8点有效建议
2010/11/20 PHP
超级实用的7个PHP代码片段分享
2012/01/05 PHP
深入php self与$this的详解
2013/06/08 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
How to Auto Include a Javascript File
2007/02/02 Javascript
详解强大的jQuery选择器之基本选择器、层次选择器
2012/02/07 Javascript
JQuery获取浏览器窗口内容部分高度的代码
2012/02/24 Javascript
刷新页面的几种方法小结(JS,ASP.NET)
2014/01/07 Javascript
JS动态显示表格上下frame的方法
2015/03/31 Javascript
JavaScript使用二分查找算法在数组中查找数据的方法
2015/04/07 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
2015/06/11 Javascript
JavaScript基本数据类型及值类型和引用类型
2015/08/25 Javascript
JS模拟的Map类实现方法
2016/06/17 Javascript
功能强大的Bootstrap使用手册(一)
2016/08/02 Javascript
Mac下使用charles遇到的问题以及解决办法
2017/01/10 Javascript
JS和canvas实现俄罗斯方块
2017/03/14 Javascript
JS 组件系列之BootstrapTable的treegrid功能
2017/06/16 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
jQuery实现基本淡入淡出效果的方法详解
2018/09/05 jQuery
详解vue引入子组件方法
2019/02/12 Javascript
javascript中call()、apply()的区别
2019/03/21 Javascript
详解vue3.0 的 Composition API 的一种使用方法
2020/10/26 Javascript
TensorFlow 实战之实现卷积神经网络的实例讲解
2018/02/26 Python
python 去除txt文本中的空格、数字、特定字母等方法
2018/07/24 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
python实现图片二值化及灰度处理方式
2019/12/07 Python
python中property和setter装饰器用法
2019/12/19 Python
python如何实现不可变字典inmutabledict
2020/01/08 Python
pycharm 对代码做静态检查操作
2020/06/09 Python
基于TensorFlow的CNN实现Mnist手写数字识别
2020/06/17 Python
爱尔兰领先的在线体育用品零售商:theGAAstore
2018/04/16 全球购物
波兰补充商店:Muscle Power
2018/10/29 全球购物
英国手工制作的现代与经典的沙发和床:Love Your Home
2020/09/26 全球购物
旷课检讨书
2015/01/26 职场文书
学习师德师风的心得体会(2篇)
2019/10/08 职场文书
电脑关机速度很慢怎么办 提升电脑关机速度设置教程
2022/04/08 数码科技