2015-09-05 2 views
3

Я всегда это видел, но я никогда не понимал. Почему так много функций имеют эти вложенные скобки и странно размещенные запятые в определениях функций?Почему скобки и запятые так странно помещены в «имя функции» ([param [, param [, ... param]]])??

Что-то вроде

function name(param, param param) 

будет иметь смысл для меня, или

function name([param, [param, [param, [param]]]]) 

будет иметь смысл, но что причина для левого кронштейна слева от запятой?

+2

Это только для документации, я думаю. Каждое слово или группа слов в квадратных скобках означает, что это необязательно. – Xufox

ответ

8

Это означает, что аргумент не является обязательным. Например, в

function foo(par1[, par2]) {} 

par1 аргумент является обязательным, но par2 не является обязательным. Если вы используете par2, тогда необходима запятая, поэтому она включена в фигурные скобки.

+0

Идеальный смысл. Благодаря! – user49404

Смежные вопросы