JavaScript:在语法示例中打开参数括号后的逗号

时间:2015-01-06 04:50:12

标签: javascript syntax comma brackets

Array.prototype.indexOf()等方法的语法如下所示:

arr.indexOf(searchElement[, fromIndex = 0])

[, ...]是什么意思,为什么括号里面有逗号?

3 个答案:

答案 0 :(得分:4)

括号本身表示“可选”,如果您决定省略该参数,= 0会给出默认值。

换句话说,您可以将indexOf searchElement一起使用,在这种情况下,假设fromIndex为零。

如果您不想在元素编号0处开始搜索,也可以为fromIndex指定自己的值。

所以前两个是等价的,而第三个将开始在数组中的不同点进行搜索:

x = haystack.indexOf (needle);
x = haystack.indexOf (needle, 0);
x = haystack.indexOf (needle, 42);

Mozilla开发者网络this就此事(我的斜体字)说:

  

<强>的fromIndex:

     

开始搜索的索引。

     

如果索引大于或等于数组的长度,则返回-1,这意味着不会搜索该数组。

     

如果提供的索引值为负数,则将其作为数组末尾的偏移量。

     

注意:如果提供的索引为负数,则仍会从前到后搜索数组。如果计算的索引小于0,则将搜索整个数组。

     

默认值:0(搜索整个数组)。

答案 1 :(得分:1)

arr.indexOf(searchElement[, fromIndex = 0])

括号用于表示可以选择使用。逗号用于分隔参数。

例如。你使用两者,那么你会这样做:

arr.indexOf(searchElement, fromIndex)

或者,

//omitting fromIndex use the default to 0
arr.indexOf(searchElement)//As fromIndex is optional to use

答案 2 :(得分:1)

这是为了表示多个功能签名。 []内的那些是可选参数。所以这意味着您可以调用它,如:

arr.indexOf(searchElement) // in such case fromIndex is 0 by default

或者,您可以使用两个参数调用:

arr.indexOf(searchElement, fromIndex)