📜  JavaScript | String.slice 和 String.substring 的区别

📅  最后修改于: 2022-05-13 01:56:32.474000             🧑  作者: Mango

JavaScript | String.slice 和 String.substring 的区别

这两个函数在语法上非常相似,但在某些情况下有所不同。让我们看看它们之间的区别。

  1. 片():
    此方法选择字符串字符串。开始和结束参数用于指定提取的部分。
    第一个字符从索引 0 开始。

    句法:

    str.slice(start, end)
    

    范围:

    • 开始:此参数是必需的。它指定开始提取的位置。第一个字符从位置 0 开始。
    • end:此参数是可选的。停止选择的位置(最多,但不包括)。如果省略参数,则函数选择从开始参数到字符串。

  2. 子字符串():
    此函数与slice()的语法相同
    方法选择字符串字符串。开始和结束参数用于指定提取的部分。
    第一个字符从索引 0 开始。

    句法:

    str.substring(start, end)
    

    范围:

    • 开始:此参数是必需的。它指定开始提取的位置。第一个字符从位置 0 开始。
    • end:此参数是可选的。停止选择的位置(最多,但不包括)。如果省略参数,则函数选择从开始参数到字符串。

共同结果
在给定的情况下,两者都给出相同的结果。

  1. 如果start == stop ,都返回一个空字符串
  2. 如果省略stop ,则两者都提取字符直到字符串的末尾
  3. 如果任何参数大于字符串的长度,则在这种情况下将使用字符串的长度。

子串()
substring() 的单独结果

  1. 如果start > stop ,则函数交换两个参数。
  2. 如果任何参数为负数或为 NaN,则将其视为 0。

片()
slice() 的分离结果

  1. 如果start > stop ,此函数将返回一个空字符串。 (“”)
  2. 如果start为负数,则从字符串的末尾设置 char,如 substr()。
  3. 如果stop为负数,则设置stop = string.length – Math.abs(stop) (原始值)

这里有几个例子。
示例 1:此示例在两种情况下给出了相同的结果。



  

    
        JavaScript | 
      difference between String.slice and 
      String.substring
    

  

  
    

               GeeksForGeeks           

       

    

               

    

          

输出:

  • 在点击按钮之前:
  • 点击按钮后:

示例 2:在此示例中,如果是substring() ,它会在start>stop时交换参数,其中slice()返回空字符串。



  

    
        JavaScript | difference 
      between String.slice and
      String.substring
    

  

  
    

               GeeksForGeeks           

       

    

               

    

          

输出:

  • 在点击按钮之前:
  • 点击按钮后:

示例 3:在此示例中,如果substring()负参数被视为 0,其中slice()返回空字符串。



  

    
        JavaScript | difference
      between String.slice and
      String.substring
    

  

  
    

               GeeksForGeeks           

       

    

               

    

          

输出:

  • 在点击按钮之前:
  • 点击按钮后:
 string.slicestring.substring
1.It is used to extract a part of the stringIt is used to extract a substring in a string
2.Its return value is a string because it returns some part of the string.It does not distort the original string
3.It takes parameter as integer i.e; the indexes of string from where to where we want to extract the stringIts parameters are the start and end position of the substring that  we want to extract
4.

Syntax -:

string_name.slice(index1 , index2)

Syntax – :

string.substring(start, end)

5.It is an in-built string method in JavascriptIt is also an in-built string method in Javascript.
6.It does not distort the original stringIts return value is of type string
7.Its supported browsers are -: chrome , safari, Microsoft edge , firefox , Internet Explorer , operaIts supported browsers are -: chrome , safari, Microsoft edge , firefox , Internet Explorer , opera
8.It is an ECMAScript1 feature.It is an ECMAScript1 feature.