indexOf fromIndex函数?

时间:2016-04-26 20:40:39

标签: javascript

我只是想知道formIndex ofstring.indexOf(searchValue [,fromIndex])的用途是什么?我找到了这样的代码:

 for (var sA in secondOnArray) { 
  if (firstOnArray.indexOf(secondOnArray[sA]) > -1) { // what is the purpose of [sA] there?
   result+= 0; 
  }
 }

Mozilla String indexOf()w3Schools indexOf()示例似乎非常不同?

1 个答案:

答案 0 :(得分:2)

你误解了这种符号。

ofstring.indexOf(searchValue[, fromIndex])

这意味着此函数的第二个参数fromIndex是可选的。如果提供,它会告诉indexOf从哪里开始查找。否则,它默认为0

要调用双参数表单,语法为:

ofstring.indexOf(value, index)

并特别注意没有方括号。方括号只是文档的标记方便。

至于为什么代码中有方括号,请注意以下代码中的sA是索引。因此,要在索引secondOnArray获取sA,我们需要对其进行索引,因此使用方括号。这与indexOf的双参数形式无关。

for (var sA in secondOnArray) { 
  if (firstOnArray.indexOf(secondOnArray[sA]) > -1) {
    result += 0; 
  }
}

有人可能会考虑改为写作

secondOnArray.forEach(function (ele) {
  if (firstOnArray.indexOf(ele) > -1) {
    result += 0;
  }
});

指明意图更明确。