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重載測試被調用方法1
/// </summary>
/// <param name="arm1"></param>
alert(arm1);
}
function testFun2(arm1,arm2){
/// <summary>
/// JS重載測試被調用方法2
/// </summary>
/// <param name="arm1"></param>
/// <param name="arm2"></param>
alert(arm1+','+arm2);
}
function testFun3(arm1,arm2,arm3){
/// <summary>
/// JS重載測試被調用方法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重載測試被調用方法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>
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript數(shù)學運算用法總結》、《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》及《JavaScript遍歷算法與技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。
相關文章
GitHub上一些實用的JavaScript的文件壓縮解壓縮庫推薦
這篇文章主要介紹了GitHub上一些實用的JavaScript的文件壓縮解壓縮庫推薦,推薦的這幾個都是支持zip格式的,需要的朋友可以參考下2016-03-03
JavaScript中檢測數(shù)據(jù)類型的四種方法
這篇文章主要給大家分享的是JavaScript中檢測數(shù)據(jù)類型的四種方法,有 typeof、instanceof、constructor、Object.prototype.toString.call(),下面文章詳細介紹內容,需要的小伙伴可以參考一下2022-01-01
js substr支持中文截取函數(shù)代碼(中文是雙字節(jié))
js substr支持中文截取函數(shù)代碼,中文是雙字節(jié),配有實例需要的朋友可以參考下2013-04-04

