Привет.
Есть функция, например:
function hello(one, two, three, callback) {
...
}
two, three - необязательные параметры, однако в таком случае требуется переопределить callback и назначить этим параметрам значения по умолчанию.
function hello(one, two, three, callback) {
if (arguments.length === 3) {
callback = three;
three = 3;
}
else if (arguments.length === 2) {
callback = two;
two = 2;
three = 3;
}
...
}
Выглядит довольно "топорно", если учесть, что параметров может быть много. Есть ли более элегантный способ работы?