html - JavaScript 中 substr 和 slice 什么区别?
PHP中文网
PHP中文网 2017-04-11 08:56:33
0
5
800

        var str="my name is yangxiaoluo";

        console.log(  str.substr(1, 10)   );

        console.log(  str.slice(1, 10) );

我怎么试了试都一样?

PHP中文网
PHP中文网

认证高级PHP讲师

reply all(5)
小葫芦
arrayObject.slice(start,end)
stringObject.substr(start,length)
  • 首先,slice()理论上针对数组,substr()是针对字符串

  • 其次,slice()方法参数为start,end,意为返回一个新的数组,包含从 start 到 end (不包括end元素)的 arrayObject 中的元素;

  • 再次,substr()方法参数为start,length,意为返回一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符。

  • 最后,其他详细解释参照slice()方法,substr()方法

Ty80

substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
slice() 方法可从已有的数组中返回选定的元素。

var str="my name is yangxiaoluo";
console.log(  str.substr(1, 10).length   ); //10
console.log(  str.slice(1, 10).length ); //9

不是一样的,你的运行结果正好有空格,所以看上去是一样的
你看下你结果的字符串的长度就知道是不一样的了

伊谢尔伦

http://www.jacklmoore.com/notes/substrin...

巴扎黑

substr是截取对应的字符,也就是改变了原字符串的内容,而slice是复制对应的字符,并不修改原字符串的内容

PHPzhong

http://www.w3school.com.cn/jsref/jsref_o...

多看看手册

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template