我现在已经看到了 2 种方法来确定参数是否已传递给 JavaScript 函数。我想知道一种方法是否比另一种更好,或者一种方法不好用?
function Test(argument1, argument2) {
if (Test.arguments.length == 1) argument2 = 'blah';
alert(argument2);
}
Test('test');
或者
function Test(argument1, argument2) {
argument2 = argument2 || 'blah';
alert(argument2);
}
Test('test');
据我所知,它们都会产生相同的结果,但我之前只在生产中使用过第一个。
汤姆提到的另一个选项:
function Test(argument1, argument2) {
if(argument2 === null) {
argument2 = 'blah';
}
alert(argument2);
}
根据胡安的评论,最好将汤姆的建议改为:
function Test(argument1, argument2) {
if(argument2 === undefined) {
argument2 = 'blah';
}
alert(argument2);
}