www.qjdy.com-奇迹赌场 > www.qjdy.com官网 > www.qjdy.com阅读目录

原标题:www.qjdy.com阅读目录

浏览次数:166 时间:2019-07-14

在截取字符串时平常会用到substr()、substring()、slice()方法,不时混淆之间的用法,故总结下。

翻阅目录
•slice()
•substring()
•substr()
•总结 

slice()

概念:接受贰个要么多个参数,第叁个参数钦命子字符串的启幕地点。第三个参数表示子字符串的甘休地点(不包罗停止地方的十三分字符),如果未有传递第叁个参数,则将字符串的长度作为达成地点。

1、传递参数为正在意况:

var str ="helloWorld";
// 一个参数,则将字符串长度作为结束位置
alert(str.slice(3)); // "loWorld"
// 两个参数,7位置上的字符为"r",但不包括结束位置的字符
alert(str.slice(3,7)); // "loWo" 

2、传递参数为负值的动静:

slice()方法会将传入的负值与字符串长度相加。
 var str ="helloWorld";
// 一个参数,与字符串长度相加即为slice(7)
alert(str.slice(-3)); // "rld"
// 两个参数,与字符串长度相加即为slice(3,6)
alert(str.slice(3,-4)); // "loW" 

3、第一个参数比第叁个参数值小的图景:

slice()方法传入的首个参数比第三个参数小的话,则赶回空字符串。

var str ="helloWorld";
alert(str.slice(5,3)); // "" 

4、IE兼容性

在IE8浏览器测量检验下,没啥难题,行为与现时期浏览器同样。

substring()

概念:接受贰个照旧多个参数,第一个参数钦定子字符串的伊始地点。第三个参数表示子字符串的收尾地点(不包罗结束地点的非常字符),若无传递第叁个参数,则将字符串的长短作为实现地方。

1、传递参数为正在情状:与slice()方法行为等同的

var str ="helloWorld";
// 一个参数,则将字符串长度作为结束位置
alert(str.substring(3)); // "loWorld"
// 两个参数,7位置上的字符为"r",但不包括结束位置的字符
alert(str.substring(3,7)); // "loWo" 

2、传递参数为负值的场地:

substring()方法会把具有负值参数转变为0。来看下例子:

var str ="helloWorld";
// 两个参数,-4会转换为0,相当于substring(3,0) -->即为 substring(0,3)
alert(str.substring(3,-4)); // "hel" 

substring()方法会将极小的数作为先河地点,将相当大的数作为完成地方。如下边包车型地铁例证substring(3,0) 与substring(0,3)是同等效果的。

4、IE兼容性

在IE8浏览器测量试验下,没啥难题,行为与现时期浏览器一样。

substr()

概念:接受一个只怕三个参数,第叁个参数钦定子字符串的发端地方。第二个参数跟在此之前的艺术有个别分歧,表示回去的字符个数。若无传递第3个参数,则将字符串的尺寸作为完成地点。来看例子:

1、传递参数为正值意况:

var str ="helloWorld";
// 一个参数,则将字符串长度作为结束位置
alert(str.substr(3)); // "loWorld"
// 两个参数,从位置3开始截取后面7个字符
alert(str.substr(3,7)); // "loWorld" 

2、传递参数为负值的场合:

substr()方法会将负的率先个参数加上字符串的长短,而将负的首个参数转换为0。

var str ="helloWorld";
// 将第一个负的参数加上字符串的长度--->
//即为:substr(7,5) ,从位置7开始向后截取5个字符
alert(str.substr(-3,5)); // "rld"
// 将第二个参数转换为0
// 即为:substr(3,0),即从位置3截取0个字符串,则返回空
alert(str.substr(3,-2)); // "" 

3、IE兼容性

substr()方法传递负值的情事下会设格外,会回去原始的字符串。IE9修复了此难题。

总结

在传递正值参数景况下,slice() 和 substring () 行为是同样的,substr()方法在第一个参数上会轻便混淆

在传递负值参数意况下,slice() 方法是经过字符串长度相加,符合一般思维,substring()第一个参数转变为0会轻便出难题,早先地方会轻松改变,substr() 方法负值情形下会产出IE包容性难点。

综上,小叔子一般推荐使用slice()方法。

上面给大家介绍slice,substr和substring的区分

首先,他们都接受多少个参数,slice和substring接收的是开首地方和终止地方(不满含截止地方),而substr接收的则是开局地点和所要重临的字符串长度。直接看下边例子:

 var test = 'hello world';
  alert(test.slice(,));    //o w
  alert(test.substring(,));   //o w
  alert(test.substr(,));   //o world 

此间有个供给注意的地点正是:substring是以五个参数中异常的小一个看成初步地方,很大的参数作为完成地方。

如:

alert(test.substring(7,4));   //o w 

随后,当接过的参数是负数时,slice会将它字符串的尺寸与相应的负数相加,结果作为参数;substr则单纯是将第二个参数与字符串长度相加后的结果作为第1个参数;substring则干脆将负参数都直接调换为0。测量试验代码如下:

var test = 'hello world';  
alert(test.slice(-));   //rld  
alert(test.substring(-));  //hello world  
alert(test.substr(-));  //rld  
alert(test.slice(,-));  //lo w  
alert(test.substring(,-)); //hel  
alert(test.substr(,-));  //空字符串 

 注意:IE对substr接收负值的拍卖有错,它会重临原始字符串。

你恐怕感兴趣的稿子:

  • JavaScript中国化学工业进出口总集团解多浏览器包容性拾几个难点的火速消除措施
  • 常用原生JS包容性写法汇总
  • JavaScript 浏览器包容性总括及常用浏览器包容性深入分析
  • JS完结包容性较好的随屏滚动作效果应
  • JS达成包容性好,自动置顶的天猫商城悬浮工具栏效果
  • javascript中setAttribute()函数使用方法及包容性
  • css与javascript跨浏览器包容性总计
  • js日期对象包容性的管理格局
  • Javascript 多浏览器兼容性难题及缓慢解决方案
  • JavaScript的包容性与调解手艺

本文由www.qjdy.com-奇迹赌场发布于www.qjdy.com官网,转载请注明出处:www.qjdy.com阅读目录

关键词: AG游戏网站

上一篇:本文实例讲述了JS禁用页面上所有控件的实现方法

下一篇:没有了