js中对函数设置默认参数值的3种方法

在javascript中如何为函数设置默认参数值,下面提供几种方法供大家参考。
第一种方法:

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


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

function example(){
  vara = arguments[0] ? arguments[0] : 1;//设置第一个参数的默认值为1
  varb = arguments[1] ? arguments[1] : 2;//设置第二个参数的默认值为2
  returna+b;
}


调用示例:


alert( example() ); //输出3
alert( example(10) ); //输出12
alert( example(10,20) ); //输出30
alert( example(null,20) ); //输出20


第二种方法:

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


该函数也可以写作如下:

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


调用示例:

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


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

function example(setting){
  vardefaultSetting={
    name:'小红',
    age:'30',
    sex:'女',
    phone:'100866',
    QQ:'100866',
    birthday:'1949.10.01'
  };
  $.extend(defaultSetting,settings);
  varmessage='姓名:'+defaultSetting.name
  +',性别:'+defaultSetting.sex
  +',年龄:'+defaultSetting.age
  +',电话:'+defaultSetting.phone
  +',QQ:'+defaultSetting.QQ
  +',生日:'+defaultSetting.birthday
  +'。';
  alert(message);
}


调用示例:

example({
  name:'小红',
  sex:'女',
  phone:'100866'
});
//输出:姓名:小红,性别:女,年龄:30,电话:100866,QQ:100866。


以上这三种方法大家学会了吗,这三种方法各有优缺点,大家具体情况具体分析,选择最适合的方法进行学习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值