相关疑难解决方法(0)

如何最好地确定参数是否未发送到JavaScript函数

我现在已经看到了两种确定参数是否已传递给JavaScript函数的方法.我想知道一种方法是否优于另一种方法,或者一种方法是否使用不好?

 function Test(argument1, argument2) {
      if (Test.arguments.length == 1) argument2 = 'blah';

      alert(argument2);
 }

 Test('test');
Run Code Online (Sandbox Code Playgroud)

要么

 function Test(argument1, argument2) {
      argument2 = argument2 || 'blah';

      alert(argument2);
 }

 Test('test');
Run Code Online (Sandbox Code Playgroud)

据我所知,它们都产生了相同的结果,但我在生产之前只使用过第一个.

汤姆提到的另一个选择:

function Test(argument1, argument2) {
    if(argument2 === null) {
        argument2 = 'blah';
    }

    alert(argument2);
}
Run Code Online (Sandbox Code Playgroud)

根据胡安的评论,将汤姆的建议改为:

function Test(argument1, argument2) {
    if(argument2 === undefined) {
        argument2 = 'blah';
    }

    alert(argument2);
}
Run Code Online (Sandbox Code Playgroud)

javascript arguments

229
推荐指数
6
解决办法
14万
查看次数

标签 统计

arguments ×1

javascript ×1