Javascript中为函数设置默认参数值

Javascript(js)中如何为函数设置默认参数值,下面提供几种方法供参考。

第一种方法:

  1. function example(a,b){ 
  2.     var a = arguments[0] ? arguments[0] : 1;//设置参数a的默认值为1 
  3.     var b = arguments[1] ? arguments[1] : 2;//设置参数b的默认值为2 
  4.     return a+b; 

注意以上函数也可写作如下:

  1. function example(){ 
  2.     var a = arguments[0] ? arguments[0] : 1;//设置第一个参数的默认值为1 
  3.     var b = arguments[1] ? arguments[1] : 2;//设置第二个参数的默认值为2 
  4.     return a+b; 

调用示例:

  1. alert( example() ); //输出3 
  2. alert( example(10) ); //输出12 
  3. alert( example(10,20) ); //输出30 
  4. alert( example(null,20) ); //输出20 

第二种方法:

  1. function example(name,age){ 
  2.     name=name||'貂蝉'
  3.     age=age||21; 
  4.     alert('你好!我是'+name+',今年'+age+'岁。'); 

该函数也可以写作如下:

  1. function example(name,age){ 
  2.     if(!name){name='貂蝉';} 
  3.     if(!age){age=21;} 
  4.     alert('你好!我是'+name+',今年'+age+'岁。'); 

调用示例:

  1. example('王五');//输出:你好!我是王五,今年21岁。   
  2. example('王五',30);//输出:你好!我是王五,今年30岁。   
  3. example(null,30);//输出:你好!我是貂蝉,今年30岁。 

第三种方法,这种方法适合用于参数较多的情况,使用了Jquery的扩展:

  1. function example(setting){ 
  2.     var defaultSetting={ 
  3.         name:'貂蝉'
  4.         age:'30'
  5.         sex:'女'
  6.         phone:'13611876347'
  7.         QQ:'10086'
  8.         birthday:'1949.10.01'  
  9.     }; 
  10.     $.extend(defaultSetting,settings); 
  11.     var message='姓名:'+defaultSetting.name 
  12.     +',性别:'+defaultSetting.sex 
  13.     +',年龄:'+defaultSetting.age 
  14.     +',电话:'+defaultSetting.phone 
  15.     +',QQ:'+defaultSetting.QQ 
  16.     +',生日:'+defaultSetting.birthday 
  17.     +'。'
  18.     alert(message); 

调用示例:

  1. example({ 
  2.     name:'王昭君'
  3.     sex:'女'
  4.     phone:'10089' 
  5. }); 
  6. //输出:姓名:王昭君,性别:女,年龄:30,电话:10089,QQ:10086,生日:1949.10.01。 

转载请注明:代码家园 » Javascript中为函数设置默认参数值

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)