今天在写着JS代码的时候,由于函数需要传参并且有不传参的情况,在C/C++里面我们可以使用
void myfunction( arg1 = 11 ){...}
来设置参数的默认值。但是Javascript里面并不提供这种功能。
我在写代码的时候用的是JQuery,同样也不提供默认参数设置。
在网上搜了挺多,大多没用,我的想法是:先在函数里包含一个形参$arg(这里用JQuery作为例子),然后在函数体中判断$arg是否存在,如果存在则使用该值,如果不存在则赋默认值。
但是我使用if($arg)时是判断不了的,使用if($arg == null)也一样判断不了,在网上搜了一下使用if( $arg.length == 0 )也还是不行。alert一下$arg,显示为[Obeject][Obeject],即JQuery返回的数组。
解决的办法是:使用.length方法判断该变量长度,如果为false则表示$arg没有赋值。代码如下:
function sample( $arg ){
if( !( $arg.length ) ){
$arg = 111;
}
....
}