麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

舉例說明如何為JavaScript的方法參數(shù)設(shè)置默認(rèn)值

2024-05-06 16:25:08
字體:
供稿:網(wǎng)友

這篇文章主要介紹了舉例說明如何為JavaScript的方法參數(shù)設(shè)置默認(rèn)值,參數(shù)默認(rèn)值的設(shè)置是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下

你是否遇到過這樣的情況,寫了個function,無參數(shù)。

 

 
  1. function showUserInfo(){ 
  2. alert("你好!我是小明。"); 
  3.  
  4. function showUserInfo(){  
  5. alert("你好!我是小明。");  
  6. }  

調(diào)用:

 

 
  1. showUserInfo(); 
  2.  
  3. showUserInfo();  

后來,發(fā)現(xiàn)其他地方也需要這個function,但是有變量值已經(jīng)在function里面寫死了,怎么辦?加個參數(shù)吧。

 

 
  1. function showUserInfo(name){ 
  2. name=name||"小明"
  3. alert("你好!我是"+name+"。"); 
  4.  
  5. function showUserInfo(name){  
  6. name=name||"小明";  
  7. alert("你好!我是"+name+"。");  
  8. }  

說明一下:name=name||"小明" 這句代碼的意思是如果name為null就等于默認(rèn)值“小明”。也可以這樣寫:

 

 
  1. function showUserInfo(name){ 
  2. // name=name||"小明"; 
  3. if(!name){ 
  4. name="小明"
  5. alert("你好!我是"+name+"。"); 
  6.  
  7. function showUserInfo(name){  
  8. // name=name||"小明";  
  9. if(!name){  
  10. name="小明";  
  11. }  
  12. alert("你好!我是"+name+"。");  
  13. }  

調(diào)用:

 

 
  1. showUserInfo('小李'); 
  2.  
  3. showUserInfo('小李');  

后來,需求又變了,需要加上年齡。好吧再改:

 

 
  1. function showUserInfo(name,age){ 
  2. name=name||"小明"
  3. age=age||22; 
  4. alert("你好!我是"+name+",今年"+age+"歲。"); 
  5.  
  6. function showUserInfo(name,age){  
  7. name=name||"小明";  
  8. age=age||22;  
  9. alert("你好!我是"+name+",今年"+age+"歲。");  
  10. }  

調(diào)用:

 

 
  1. showUserInfo('小李');//結(jié)果:你好!我是小李,今年22歲。 
  2. showUserInfo('小李',19);//結(jié)果:你好!我是小李,今年19歲。 
  3. showUserInfo(null,19);//結(jié)果:你好!我是小明,今年19歲。 
  4.  
  5. showUserInfo('小李');//結(jié)果:你好!我是小李,今年22歲。  
  6. showUserInfo('小李',19);//結(jié)果:你好!我是小李,今年19歲。  
  7. showUserInfo(null,19);//結(jié)果:你好!我是小明,今年19歲。  

好了,如果我們需要再添加生日、電話、性別、QQ等等參數(shù),又該怎么辦呢?一個一個的設(shè)置默認(rèn)值嗎?實際上,我看到很多人確實是這樣做的。下面我們來看一個更簡單的方式。那就是使用Jquery的擴(kuò)展。先看代碼:

 

 
  1. function showUserInfo(setting){ 
  2. var defaultSetting={ 
  3. name:"小明"
  4. age:"22"
  5. sex:"男"
  6. phone:"13888888888"
  7. QQ:"12345678"
  8. birthday:"1980.12.29" 
  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); 
  19.  
  20.  
  21. function showUserInfo(setting){  
  22. var defaultSetting={  
  23. name:"小明",  
  24. age:"22",  
  25. sex:"男",  
  26. phone:"13888888888",  
  27. QQ:"12345678",  
  28. birthday:"1980.12.29" 
  29. };  
  30.  
  31. $.extend(defaultSetting,settings);  
  32.  
  33. var message='姓名:'+defaultSetting.name  
  34. +',性別:'+defaultSetting.sex  
  35. +',年齡:'+defaultSetting.age  
  36. +',電話:'+defaultSetting.phone  
  37. +',QQ:'+defaultSetting.QQ  
  38. +',生日:'+defaultSetting.birthday  
  39. +'。';  
  40. alert(message);  
  41. }  

說明:$.extend(defaultSetting,settings)的作用就是將傳入的setting配置與defaultSetting合并,并用setting中的配置覆蓋defaultSetting的配置。

調(diào)用:

 

 
  1. showUserInfo({ 
  2. name:"小李" 
  3. }); 
  4. //結(jié)果:姓名:小李,性別:男,年齡:22,電話:13888888888,QQ:12345678,生日:1980.12.29。 
  5. showUserInfo({ 
  6. name:"小紅"
  7. sex:"女"
  8. phone:"13777777777" 
  9. }); 
  10. //結(jié)果:姓名:小紅,性別:女,年齡:22,電話:13777777777,QQ:12345678,生日:1980.12.29。 
  11.  
  12.  
  13.  
  14.  
  15. showUserInfo({  
  16. name:"小李" 
  17. });  
  18. //結(jié)果:姓名:小李,性別:男,年齡:22,電話:13888888888,QQ:12345678,生日:1980.12.29。  
  19. showUserInfo({  
  20. name:"小紅",  
  21. sex:"女",  
  22. phone:"13777777777" 
  23. });  
  24. //結(jié)果:姓名:小紅,性別:女,年齡:22,電話:13777777777,QQ:12345678,生日:1980.12.29。  

很簡單吧!這樣,就算有100個參數(shù),都不怕了。

那么什么時候使用多個參數(shù),什么時候使用這樣的參數(shù)對象呢?我的經(jīng)驗是,根據(jù)實際需要,如果使用一、兩個參數(shù)就可以搞定的就不使用參數(shù)對象。超過3個,我就會使用這種參數(shù)對象。


注:相關(guān)教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 国产精品视频专区 | 欧美极品欧美精品欧美视频 | 视频一区免费观看 | 久久精品99北条麻妃 | 一级电影免费在线观看 | 国产免费久久久久 | 在线播放黄色片 | 国内毛片视频 | 欧美成人一区二区视频 | 天天曰夜夜操 | 天堂成人国产精品一区 | 国产免费激情视频 | 看免费5xxaaa毛片 | 久久亚洲综合色 | 欧美人与性禽动交精品 | 草免费视频 | 青青草成人免费视频在线 | 成人毛片免费看 | 成人毛片免费播放 | 97zyz成人免费视频 | 欧美福利视频一区二区三区 | 亚洲精品永久视频 | 免费91在线 | 国产女做a爱免费视频 | 91色琪琪电影亚洲精品久久 | 1级片在线观看 | 亚洲欧美不卡视频 | 国产精品嘿咻嘿咻在线播放 | 国产精品久久久久久久久久尿 | 激情小说激情电影 | 亚洲第一视频 | 久久精品亚洲一区二区 | 毛片在线免费观看网址 | 91网视频| 麻豆传传媒久久久爱 | 久久中文一区 | av成人一区二区 | 欧美日韩在线播放一区 | 中国老女人一级毛片视频 | 国产寡妇xxxxxxxx性开放 | 久啪视频|