lastIndexOf()如果省略fromIndex参数,则为JavaScript默认值

时间:2017-01-07 15:56:24

标签: javascript

在JavaScript中,您拥有lastIndexOf(string,[fromIndex])方法。

fromIndex是可选参数。如果省略fromIndex,则默认值为0还是string.length - 1

2 个答案:

答案 0 :(得分:0)

来自MDN

  

默认值为+Infinity

这意味着默认情况下会搜索整个字符串。

答案 1 :(得分:0)

对于数组length - 1

  

Array.prototype.lastIndexOf ( searchElement [ , fromIndex ] )

     
      
  1. 如果传递了参数 fromIndex ,那么让 n 成为?   ToInteger的fromIndex );否则让 n 成为 len -1。
  2.   

对于字符串,它的无限:

  

String.prototype.lastIndexOf ( searchString [ , position ] )

     
      
  1. numPos 成为? ToNumber位置)。 (如果位置是   未定义,此步骤生成值 NaN 。)

  2.   
  3. 如果 numPos NaN ,请 pos 为+∞;否则,让 pos 成为   ToInteger numPos

  4.   

但是请注意它被最大值限制:

  
      
  1. 开始minmax pos ,0), len
  2.   

因此它变为length,而不是length - 1。这样你就可以在最后找到空字符串:

'abcd'.lastIndexOf('d');    // 3
'abcd'.lastIndexOf('d', 3); // 3  --  can be length-1

'abcd'.lastIndexOf('');     // 4
'abcd'.lastIndexOf('', 3);  // 3  --  cannot be length-1