Возьмите пример функции здесь:
function a(b){
console.log(b != null ? 1 : 2);
}
Этот код отлично работает, печатая 1, если вы передаете параметр, и 2, если вы этого не делаете.
Однако JSLint выдает мне предупреждение, говоря мне вместо этого использовать строгое равенство, то есть !==
. Независимо от того, передан параметр или нет, функция будет печатать 1 при использовании !==
.
Итак, мой вопрос: как лучше всего проверить, был ли передан параметр? Я не хочу использовать arguments.length
или вообще использовать объект arguments
.
Я пытался использовать это:
function a(b){
console.log(typeof(b) !== "undefined" ? 1 : 2);
}
^ похоже, это сработало, но лучший ли это метод?