JS模擬實現(xiàn)方法重載示例
本文實例講述了JS模擬實現(xiàn)方法重載。分享給大家供大家參考,具體如下:
在JS方法中,不能像C#方法能實現(xiàn)重載,但是我們可以通過js中的arguments來實現(xiàn)js方法的重載。
下面給出html實例:
<html> <head> <title>JS方法的重載</title> <script> function testFun1(arm1){ /// <summary> /// JS重載測試被調(diào)用方法1 /// </summary> /// <param name="arm1"></param> alert(arm1); } function testFun2(arm1,arm2){ /// <summary> /// JS重載測試被調(diào)用方法2 /// </summary> /// <param name="arm1"></param> /// <param name="arm2"></param> alert(arm1+','+arm2); } function testFun3(arm1,arm2,arm3){ /// <summary> /// JS重載測試被調(diào)用方法3 /// </summary> /// <param name="arm1"></param> /// <param name="arm2"></param> /// <param name="arm3"></param> alert(arm1+','+arm2+','+arm3); } function testFun4(arm1,arm2,arm3,arm4){ /// <summary> /// JS重載測試被調(diào)用方法4 /// </summary> /// <param name="arm1"></param> /// <param name="arm2"></param> /// <param name="arm3"></param> /// <param name="arm4"></param> alert(arm1+','+arm2+','+arm3+','+arm4); } function testFun(arm1,arm2,arm3,arm4){ /// <summary> /// JS重載測試方法 /// </summary> /// <param name="arm1"></param> /// <param name="arm2"></param> /// <param name="arm3"></param> /// <param name="arm4"></param> if(arguments.length==1){ alert('我是JS的重載方法,該方法的參數(shù)一共有'+arguments.length+'個。\n參數(shù)1:'+arguments[0]); //這里既是執(zhí)行重載的方法 testFun1(arm1); } else if(arguments.length==2){ alert('我是JS的重載方法,該方法的參數(shù)一共有'+arguments.length+'個。\n參數(shù)1:'+arguments[0]+'\n參數(shù)2:'+arguments[1]); //這里既是執(zhí)行重載的方法 testFun2(arm1,arm2); } else if(arguments.length==3){ alert('我是JS的重載方法,該方法的參數(shù)一共有'+arguments.length+'個。\n參數(shù)1:'+arguments[0]+'\n參數(shù)2:'+arguments[1]+'\n參數(shù)3:'+arguments[2]); //這里既是執(zhí)行重載的方法 testFun3(arm1,arm2,arm3); } else if(arguments.length==4){ alert('我是JS的重載方法,該方法的參數(shù)一共有'+arguments.length+'個。\n參數(shù)1:'+arguments[0]+'\n參數(shù)2:'+arguments[1]+'\n參數(shù)3:'+arguments[2]+'\n參數(shù)4:'+arguments[3]); //這里既是執(zhí)行重載的方法 testFun4(arm1,arm2,arm3,arm4); } //多個參數(shù)以此類推 } //初始化執(zhí)行的方法 window.onload=function(){ testFun(1,2,3); } </script> </head> <body> JS方法的重載 </body> </html>
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)學(xué)運算用法總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調(diào)試技巧總結(jié)》及《JavaScript遍歷算法與技巧總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
JS實現(xiàn)pasteHTML兼容ie,firefox,chrome的方法
這篇文章主要介紹了JS實現(xiàn)pasteHTML兼容ie,firefox,chrome的方法,涉及javascript針對頁面元素的動態(tài)操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下2016-06-06JavaScript 面向?qū)ο蠡A(chǔ)簡單示例
這篇文章主要介紹了JavaScript 面向?qū)ο蠡A(chǔ),結(jié)合簡單實例形式分析了JavaScript面向?qū)ο蟪绦蛟O(shè)計中類的定義、類方法與屬性相關(guān)操作技巧,需要的朋友可以參考下2019-10-10詳解JS: reduce方法實現(xiàn) webpack多文件入口
本篇文章主要介紹了詳解JS: reduce方法實現(xiàn) webpack多文件入口,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02選擇指定數(shù)量后checkbox不可選(變灰)javascript代碼
選擇指定數(shù)量后checkbox不可選(變灰)javascript代碼2009-06-06