如果我需要检查参数,我会这样做。
if ((typeof param == 'undefined') || (param == null)){
param = ''; //or param = false;
}
如果它是一个数字,我也可能会进行isNaN
检查。我只是想知道如果你需要检查你的参数,是否还有其他我应该检查的东西或你做了什么。我知道javascript有很多怪癖可能会影响这样的事情。检查的好习惯是什么?
由于
答案 0 :(得分:7)
如果对象是false
,undefined
,null
,NaN
,0
,"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在很多方面都非常有用。您还可以使用它来重载函数 - 根据提供的参数数量等提供不同的功能或参数。
但除此之外,我不知道你需要什么。