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(){ var a = arguments[0] ? arguments[0] : 1;//设置第一个参数的默认值为1 var b = arguments[1] ? arguments[1] : 2;//设置第二个参数的默认值为2 return a+b; }
呼び出し例:
alert( example() ); //输出3 alert( example(10) ); //输出12 alert( example(10,20) ); //输出30 alert( example(null,20) ); //输出20
2 番目の方法:
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岁。
3 番目の方法。この方法は、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); }
呼び出し例:
example({ name:'小红', sex:'女', phone:'100866' }); //输出:姓名:小红,性别:女,年龄:30,电话:100866,QQ:100866。
上記の 3 つの方法を学習しましたか? これら 3 つの方法にはそれぞれ長所と短所があります。自分の状況を分析して、最適な学習方法を選択してください。