我只是想知道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;
}
}
答案 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;
}
});
指明意图更明确。