Maison >interface Web >js tutoriel >3 façons de définir les valeurs de paramètres par défaut pour les fonctions dans les compétences js_javascript

3 façons de définir les valeurs de paramètres par défaut pour les fonctions dans les compétences js_javascript

WBOY
WBOYoriginal
2016-05-16 15:35:241504parcourir

Comment définir les valeurs des paramètres par défaut pour les fonctions en JavaScript, voici plusieurs méthodes pour votre référence.
Première méthode :

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; 
} 

Notez que la fonction ci-dessus peut également s'écrire comme suit :

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

Exemple d'appel :

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

Deuxième méthode :

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

Cette fonction peut également s'écrire comme suit :

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

Exemple d'appel :

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

La troisième méthode, cette méthode convient aux situations avec de nombreux paramètres, utilisant l'extension Jquery :

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

Exemple d'appel :

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

Avez-vous appris les trois méthodes ci-dessus ? Chacune de ces trois méthodes a ses propres avantages et inconvénients. Veuillez analyser votre situation spécifique et choisir la méthode d'apprentissage la plus appropriée.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn