Источник: http://learn.javascript.ru/arguments-named
Именованные аргументы не имеют отношения кarguments
. Это альтернативная техника работы с аргументами, которая позволяет обращаться к ним по имени, а не по номеру.
В JavaScript именованные параметры реализуются при помощи объекта. Вместо списка аргументов передается объект с параметрами, вот так:
function showWarning(options) {
var width = options.width || 200; // по умолчанию
var height = options.height || 100;
var title = options.title || "Предупреждение";
// ...
}
Вызвать такую функцию очень легко. Достаточно передать объект аргументов, указав в нем только нужные:
showWarning({
contents: "Вы вызвали функцию",
showYesNo: true
});
Еще один бонус кроме красивой записи — возможность повторного использования объекта аргументов:
var opts = {
width: 400,
height: 200,
contents: "Текст",
showYesNo: true
};
showWarning(opts);
opts.contents = "Другой текст";