All,
Я использую JSLint для проверки моих файлов JS. В моем последнем проекте я использую следующий формат для установки значений по умолчанию для ряда функций JavaScript (подробнее здесь ):
function(a, b, option) {
option = arguments.length > 2 ? option : "some default value";
// ...
}
Однако это приводит к построение JSLint для выдачи следующей ошибки:
"Do not mutate parameter 'option' when using 'arguments'."
Я знаю, что использование более распространенного метода назначения значений по умолчанию (например, option = option || {};
) подавляет ошибку; однако это приведет к вызывают некорректное поведение, если я намерен передать значение falsey в параметр
.
Является ли единственным решением этой проблемы введение новой переменной? например:
var option2 = arguments.length > 2 ? option : "some default value";