JS模拟实现方法重载示例


Posted in Javascript onAugust 03, 2016

本文实例讲述了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 相关文章推荐
jQuery在html有效在jsp无效的原因及解决方法
Aug 02 Javascript
简单的邮箱登陆的提示效果类似于yahoo邮箱
Feb 26 Javascript
BootStrap Table对前台页面表格的支持实例讲解
Dec 22 Javascript
canvas绘制万花筒效果(代码分享)
Jan 20 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
Feb 14 Javascript
微信小程序教程系列之新建页面(4)
Apr 17 Javascript
vue2中filter()的实现代码
Jul 09 Javascript
纯JavaScript实现实时反馈系统时间
Oct 26 Javascript
ES6 javascript的异步操作实例详解
Oct 30 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
Feb 27 Javascript
element表格翻页第2页从1开始编号(后端从0开始分页)
Dec 10 Javascript
JavaScript实现世界各地时间显示
Sep 07 Javascript
jQuery数组处理函数整理
Aug 03 #Javascript
功能强大的Bootstrap组件(结合js)
Aug 03 #Javascript
AngularJS基础 ng-submit 指令简单示例
Aug 03 #Javascript
一个简单的JavaScript Map实例(分享)
Aug 03 #Javascript
AngularJS教程 ng-style 指令简单示例
Aug 03 #Javascript
js判断数组key是否存在(不用循环)的简单实例
Aug 03 #Javascript
JavaScript将DOM事件处理程序封装为event.js 出现的低级错误问题
Aug 03 #Javascript
You might like
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解
2016/10/13 PHP
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
js模拟hashtable的简单实例
2014/03/06 Javascript
jQuery中使用data()方法读取HTML5自定义属性data-*实例
2014/04/11 Javascript
node.js+Ajax实现获取HTTP服务器返回数据
2014/11/26 Javascript
js检测判断日期大于多少天的方法
2015/05/04 Javascript
jquery实现模拟百分比进度条渐变效果代码
2015/10/29 Javascript
jquery+php实现滚动的数字特效
2015/11/29 Javascript
jQuery查找节点方法完整实例
2016/09/13 Javascript
jquery插件bootstrapValidator表单验证详解
2016/12/15 Javascript
jQuery基于ajax实现页面加载后检查用户登录状态的方法
2017/02/10 Javascript
浅谈Angular路由复用策略
2017/10/04 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
[01:19:34]2014 DOTA2国际邀请赛中国区预选赛 New Element VS Dream time
2014/05/22 DOTA
[42:48]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第二场 12.11
2020/12/16 DOTA
python的exec、eval使用分析
2017/12/11 Python
Centos7 Python3下安装scrapy的详细步骤
2018/03/15 Python
六行python代码的爱心曲线详解
2019/05/17 Python
利用Python模拟登录pastebin.com的实现方法
2019/07/12 Python
Flask框架学习笔记之消息提示与异常处理操作详解
2019/08/15 Python
python实现根据文件格式分类
2019/10/31 Python
css3实现一款模仿iphone样式的注册表单
2013/03/20 HTML / CSS
html5仿支付宝密码框的实现代码
2017/09/06 HTML / CSS
精神文明单位申报材料
2014/05/02 职场文书
初三新学期计划书
2014/05/03 职场文书
环保建议书500字
2014/05/14 职场文书
党员干部一句话承诺
2014/05/30 职场文书
全国优秀教师事迹材料
2014/08/26 职场文书
2014年医院工作总结
2014/11/20 职场文书
新生入学欢迎词
2015/01/26 职场文书
安装工程师岗位职责
2015/02/13 职场文书
大学生求职简历自我评价
2015/03/02 职场文书
博物馆观后感
2015/06/05 职场文书
办公室日常管理制度
2015/08/04 职场文书
Python实现仓库管理系统
2022/05/30 Python