JavaScript中的slice()和substr()有什么区别?
我可以问一下JavaScript中string objectJavaScript中的slice()和substr()有什么区别?,javascript,slice,substr,Javascript,Slice,Substr,我可以问一下JavaScript中string objectslice()和substr()之间的区别吗?它们有不同的签名,是: 鉴于: 例如,如果我们有“1234”并且想要“23”,它将是: "1234".slice(1,3) //or... "1234".substr(1,2) 对于很少使用的负索引,它们也有不同的行为,请查看MDC文档以获取完整的描述 String.slice(开始、结束) 此方法将文本从begin剪切到end字符,例如: aler
slice()
和substr()
之间的区别吗?它们有不同的签名,是:
鉴于:
例如,如果我们有“1234”
并且想要“23”
,它将是:
"1234".slice(1,3)
//or...
"1234".substr(1,2)
对于很少使用的负索引,它们也有不同的行为,请查看MDC文档以获取完整的描述
String.slice(开始、结束)
此方法将文本从begin
剪切到end
字符,例如:
alert("Hello World!".slice(1, 8)); // ello Wo
String.substr(开始,长度)
此方法将文本从begin
剪切到begin
+长度
字符,例如:
alert("Hello World!".substr(1, 8)); // ello Wor
我认为
str.slice()
和str.substr()
之间的区别是第二个参数:
.slice()
采用EndIndex,而.substr()
采用的长度如下所示:
.slice(StartIndex,EndIndex)
和.substr(StartIndex,length)。
子字符串()
1.如果start等于stop,则返回空字符串。
2.如果省略了stop,则会将字符提取到字符串末尾。
3.如果开始>停止,则子字符串将交换这两个参数。
4.如果任一参数大于字符串的长度,则任一参数都将使用字符串的长度。
5.如果任一参数小于0或为NaN,则将其视为0
切片()
1.如果start等于stop,则返回一个空字符串,与substring()完全相同。
2.如果省略stop,slice将提取字符串末尾的字符,与substring()完全相同。
3.如果开始>停止,slice()将不会交换这两个参数。
4.如果任一参数大于字符串的长度,则任一参数都将使用字符串的长度,与substring()完全相同。请注意,“substr”方法不是ECMAScript标准的一部分,也可能在不同浏览器中给出不一致的结果。以下是一个很好的总结:
alert("Hello World!".slice(1, 8)); // ello Wo
alert("Hello World!".substr(1, 8)); // ello Wor
var str="Hello world!";
document.write(str.substring(3,7)+"<br />");
document.write(str.slice(3,7)+"<br />");
document.write(str.substr(3,7));
lo w
lo w
lo worl