Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的slice()和substr()有什么区别?_Javascript_Slice_Substr - Fatal编程技术网

JavaScript中的slice()和substr()有什么区别?

JavaScript中的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

我可以问一下JavaScript中string object
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