Javascript:确定是否将参数传递给函数

时间:2019-02-27 22:28:54

标签: javascript function parameters undefined

等待!:在您向下投票和/或将其标记为重复项之前,请阅读:

对于确定是否将参数(参数,变量等)传递给函数(包括thisthis)的问题,我已经审查了很多关于SO的答案。

但是,共识的答案是检查一种或另一种未定义的方法。但这不一定是准确的。如果传递的参数本身未定义怎么办?

基本上,我正在寻求区分:

var a = [1,2][2]  // where this will result in undefined
myFunction(a);

vs。

myFunction();  // where no variable whatsoever is passsed.

答案可能仅仅是:这是不可能的,未定义的变量应该在发送给函数之前捕获,但希望有另一种方法。

这里是JSFiddle,我尝试查看上述两种情况之间先前的建议是否有所不同-都没有运气。

如果这确实是一个重复的问题,请指出正确的方向。

1 个答案:

答案 0 :(得分:1)

您可以做的是用arguments遍历some并检查传递的值是否是虚假的(undefinednullNaN,{{ 1}},0""):

false