Javascript中设置默认参数值示例
第一种:
functiontest(a,b){ vara=arguments[0]?arguments[0]:1;//设置参数a的默认值为1 varb=arguments[1]?arguments[1]:9;//设置参数b的默认值为9 returna+b;
其等价为
functiontest(){ vara=arguments[0]?arguments[0]:1;//设置参数a的默认值为1 varb=arguments[1]?arguments[1]:9;//设置参数b的默认值为9 returna+b; }
调用示例
alert(test());//输出10 alert(test(5));//输出14 alert(test(5,6));//输出11 alert(test(null,6));//输出7 alert(test(6,null));//输出15
第二种:
functiontest(blog,address){ blog=blog||'淡忘~浅思'; address=address||'www.nhooo.com'; alert('博客名是'+blog+'的地址是'+address); }
其等价为
functiontest(blog,address){ if(!blog){blog='淡忘~浅思';} if(!address){address='www.nhooo.com';} alert('博客名是'+blog+'的地址是'+address); }
调用示例
test();//博客名是淡忘~浅思的地址是www.nhooo.com test('csdn','blog.csdn.net');//博客名是csdn的地址是blog.csdn.net test('','blog.csdn.net/u011043843');//博客名是淡忘~浅思
第三种:
functiontest(setting){ vardefaultSetting={ name:'程序爱好者', age:'1', phone:'15602277510', QQ:'259280570', message:'欢迎你的加入' }; $.extend(defaultSetting,setting); varmsg='姓名:'+defaultSetting.name +',年龄:'+defaultSetting.age +',电话:'+defaultSetting.phone +',QQ群:'+defaultSetting.QQ +',说明:'+defaultSetting.message +'。'; alert(msg); }
调用示例
test();//输出:姓名:程序爱好者,年龄:1,电话:15602277510,QQ群:259280570,说明:欢迎你的加入。 test({ name:'dwqs', age:'20', QQ:'461147874', message:'博客:www.nhooo.com' }); //输出:姓名:dwqs,年龄:20,电话:15602277510,QQ群:461147874,说明:博客:www.nhooo.com。
ps:函数参数比较多时,可以用此方法。这是JQuery的一种扩展,所以需要引入JQuery。