84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
var str="my name is yangxiaoluo"; console.log( str.substr(1, 10) ); console.log( str.slice(1, 10) );
我怎么试了试都一样?
认证高级PHP讲师
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()方法
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。slice() 方法可从已有的数组中返回选定的元素。
substr()
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是复制对应的字符,并不修改原字符串的内容
http://www.w3school.com.cn/jsref/jsref_o...
多看看手册
首先,slice()理论上针对数组,substr()是针对字符串
其次,slice()方法参数为start,end,意为返回一个新的数组,包含从 start 到 end (不包括end元素)的 arrayObject 中的元素;
再次,substr()方法参数为start,length,意为返回一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符。
最后,其他详细解释参照slice()方法,substr()方法
substr()
方法可在字符串中抽取从 start 下标开始的指定数目的字符。slice()
方法可从已有的数组中返回选定的元素。不是一样的,你的运行结果正好有空格,所以看上去是一样的
你看下你结果的字符串的长度就知道是不一样的了
http://www.jacklmoore.com/notes/substrin...
substr是截取对应的字符,也就是改变了原字符串的内容,而slice是复制对应的字符,并不修改原字符串的内容
http://www.w3school.com.cn/jsref/jsref_o...
多看看手册