JS模拟实现方法重载示例

前端技术 2023/09/04 JavaScript

本文实例讲述了JS模拟实现方法重载。分享给大家供大家参考,具体如下:

在JS方法中,不能像C#方法能实现重载,但是我们可以通过js中的arguments来实现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的重载方法,该方法的参数一共有\'+arguments.length+\'个。\\n参数1:\'+arguments[0]);
     //这里既是执行重载的方法
     testFun1(arm1);
  }
  else if(arguments.length==2){
     alert(\'我是JS的重载方法,该方法的参数一共有\'+arguments.length+\'个。\\n参数1:\'+arguments[0]+\'\\n参数2:\'+arguments[1]);
     //这里既是执行重载的方法
     testFun2(arm1,arm2);
  }
  else if(arguments.length==3){
     alert(\'我是JS的重载方法,该方法的参数一共有\'+arguments.length+\'个。\\n参数1:\'+arguments[0]+\'\\n参数2:\'+arguments[1]+\'\\n参数3:\'+arguments[2]);
     //这里既是执行重载的方法
     testFun3(arm1,arm2,arm3);
  }
  else if(arguments.length==4){
     alert(\'我是JS的重载方法,该方法的参数一共有\'+arguments.length+\'个。\\n参数1:\'+arguments[0]+\'\\n参数2:\'+arguments[1]+\'\\n参数3:\'+arguments[2]+\'\\n参数4:\'+arguments[3]);
     //这里既是执行重载的方法
     testFun4(arm1,arm2,arm3,arm4);
  }
  //多个参数以此类推
}
//初始化执行的方法
window.onload=function(){
  testFun(1,2,3);
}
</script>
</head>
<body>
  JS方法的重载
</body>
</html>

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript数据结构与算法技巧总结》、《JavaScript数学运算用法总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》及《JavaScript遍历算法与技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

本文地址:https://www.stayed.cn/item/9899

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。