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 相关文章推荐
JavaScript 版本自动生成文章摘要
Jul 23 Javascript
jquery实现div拖拽宽度示例代码
Jul 31 Javascript
js中switch case循环实例代码
Dec 30 Javascript
JavaScript中switch语句的用法详解
Jun 03 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
Dec 25 Javascript
Bootstrap表单控件学习使用
Mar 07 Javascript
node.js学习之事件模块Events的使用示例
Sep 28 Javascript
react-native android状态栏的实现
Jun 15 Javascript
使用ESLint禁止项目导入特定模块的方法步骤
Mar 04 Javascript
微信小程序 bindtap 传参的实例代码
Feb 21 Javascript
JavaScript中document.activeELement焦点元素介绍
Nov 27 Javascript
uni-app 微信小程序授权登录的实现步骤
Feb 18 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
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
2006/07/09 PHP
PHP5中使用DOM控制XML实现代码
2010/05/07 PHP
PHP中怎样保持SESSION不过期 原理及方案介绍
2013/08/08 PHP
PHP中的Streams详细介绍
2014/11/12 PHP
php对文件进行hash运算的方法
2015/04/03 PHP
JavaScript 函数式编程的原理
2009/10/16 Javascript
jquery中输入验证中一个不错的效果
2010/08/21 Javascript
发布一个基于javascript的动画类 Fx.js
2010/11/05 Javascript
JavaScript将相对地址转换为绝对地址示例代码
2013/07/19 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
javascript实现的多个层切换效果通用函数实例
2015/07/06 Javascript
JavaScript中rem布局在react中的应用
2015/12/09 Javascript
Angularjs实现多个页面共享数据的方式
2016/03/29 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
为Jquery EasyUI 组件加上清除功能的方法(详解)
2017/04/13 jQuery
JavaScript插件Tab选项卡效果
2017/11/14 Javascript
详解JavaScript添加给定的标签选项
2018/09/17 Javascript
深入理解 JS 垃圾回收
2019/06/03 Javascript
在layui.use 中自定义 function 的正确方法
2019/09/16 Javascript
Python中常用信号signal类型实例
2018/01/25 Python
python使用matplotlib模块绘制多条折线图、散点图
2020/04/26 Python
Flask 上传自定义头像的实例详解
2020/01/09 Python
捷克电器和DJ设备网上商店:Electronic-star
2017/07/18 全球购物
德国街头和运动文化高品质商店:BSTN Store
2017/08/26 全球购物
英国美术用品购物网站:Cass Art
2019/10/08 全球购物
Zalando Lounge瑞士:时尚与生活方式购物俱乐部
2020/03/12 全球购物
大专生自我鉴定范文
2013/10/01 职场文书
青年教师典范事迹材料
2014/01/31 职场文书
2014年科技工作总结
2014/11/26 职场文书
财务经理岗位职责
2015/01/31 职场文书
营业员岗位职责范本
2015/04/14 职场文书
幼儿园班级工作总结2015
2015/05/25 职场文书
毕业晚宴祝酒词
2015/08/11 职场文书
汽车销售员工作总结
2015/08/12 职场文书
2016年第16个全民国防教育日宣传活动总结
2016/04/05 职场文书