当前位置: 首页 > 编程笔记 >

JS模拟实现方法重载示例

邓声
2023-03-14
本文向大家介绍JS模拟实现方法重载示例,包括了JS模拟实现方法重载示例的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了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程序设计有所帮助。

 类似资料:
  • 本文向大家介绍JS模拟的Map类实现方法,包括了JS模拟的Map类实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS模拟的Map类。分享给大家供大家参考,具体如下: 根据java中map的属性,实现key----value保存 1、使用数组方式存储数据,(使用闭包) 2、使用JSON方式存储数据(使用原型方式拓展方法) 更多关于JavaScript相关内容感兴趣的读者可查看本站专

  • 本文向大家介绍JS重载实现方法分析,包括了JS重载实现方法分析的使用技巧和注意事项,需要的朋友参考一下 本文实例分析了JS重载实现方法。分享给大家供大家参考,具体如下: 重载是面向对象语言里很重要的一个特性,JS中没有真正的重载,是模拟出来的(因为js是基于对象的编程语言,不是纯面向对象的,它没有真正的多态:如继承、重载、重写) 一、什么时候用重载? 举例: 后来需求改了,需要获得20条数据,而g

  • 本文向大家介绍Lua实现__add方法重载示例,包括了Lua实现__add方法重载示例的使用技巧和注意事项,需要的朋友参考一下 实现加法(__add)重载代码示例:

  • 本文向大家介绍JS实现窗口加载时模拟鼠标移动的方法,包括了JS实现窗口加载时模拟鼠标移动的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS实现窗口加载时模拟鼠标移动的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。

  • 本文向大家介绍JS表的模拟方法,包括了JS表的模拟方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS表的模拟方法。分享给大家供大家参考。具体方法如下: 希望本文所述对大家的javascript程序设计有所帮助。

  • 本文向大家介绍JS实现数组去重复值的方法示例,包括了JS实现数组去重复值的方法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS实现数组去重复值的方法。分享给大家供大家参考,具体如下: 运行效果图如下: 完整实例代码如下: PS:这里再为大家提供几款去重复工具供大家参考使用: 在线去除重复项工具: http://tools.jb51.net/code/quchong 在线文本去重复工