检查无效的javascript函数参数

时间:2011-03-09 03:12:21

标签: javascript parameters undefined

如果我需要检查参数,我会这样做。

if ((typeof param == 'undefined') || (param == null)){
    param = ''; //or param = false;
}

如果它是一个数字,我也可能会进行isNaN检查。我只是想知道如果你需要检查你的参数,是否还有其他我应该检查的东西或你做了什么。我知道javascript有很多怪癖可能会影响这样的事情。检查的好习惯是什么?

由于

2 个答案:

答案 0 :(得分:7)

如果对象是falseundefinednullNaN0"0",则它在布尔表达式中的计算结果为false ,"false"""(空字符串)。

要简明扼要地检查所有这些,你可以这样做:

if(!param)

答案 1 :(得分:2)

我会简单地说出一句陈词滥调,并说“这取决于你想做什么”..

如果您只是想确保定义值并将其发送到函数,那么您使用的代码应该没问题。

您当然也可以检查arguments数组中的元素,例如

if (typeof arguments[0] != "string") {
    alert("Has to be string");
}

// or even

if (arguments.length < 1) {
   // there aren't any parameters
}

等...

arguments array在很多方面都非常有用。您还可以使用它来重载函数 - 根据提供的参数数量等提供不同的功能或参数。

但除此之外,我不知道你需要什么。