javascript 实现函数/方法重载效果
2017-11-05 22:27
701 查看
什么是重载?
在C#和JAVA等编程语言中函数重载是指在一个类中可以定义多个方法名相同但是方法参数和顺序不同的方法,以此来实现不同的功能和操作,这就是重载。
JS没有重载,只能模拟重载
一般来说,如果在JS中定义了两个相同名称的函数/方法,那么前一个函数等于定义无效,后一个函数才是有效的定义。即使参数不同也算是无效,因为判断依据只有函数名!这里有别于C#和JAVA语言之类的方法重载,只能算是重写。
模拟重载
在C#和JAVA等编程语言中函数重载是指在一个类中可以定义多个方法名相同但是方法参数和顺序不同的方法,以此来实现不同的功能和操作,这就是重载。
JS没有重载,只能模拟重载
一般来说,如果在JS中定义了两个相同名称的函数/方法,那么前一个函数等于定义无效,后一个函数才是有效的定义。即使参数不同也算是无效,因为判断依据只有函数名!这里有别于C#和JAVA语言之类的方法重载,只能算是重写。
模拟重载
<script type="text/javascript"> function showSum() { //使用arguments对象模拟出重载效果 if (arguments.length == 1) { alert(arguments[0] + 1); } else if (arguments.length == 2) { alert(arguments[0] + arguments[1]); } else if (arguments.length == 3) { alert(arguments[0] + arguments[1] + arguments[2]); } else { alert('请传入参数!'); } } //显示101 showSum(100); //显示200 showSum(100, 100); //显示300 showSum(100, 100,100); </script>
相关文章推荐
- 实现 JavaScript 的方法重载效果
- dojo的connect方法使用与源代码剖析(在JavaScript里实现类似AOP的效果)
- javascript中使用replaceAll()函数实现字符替换的方法
- dojo的connect方法使用与源代码剖析(在JavaScript里实现类似AOP的效果)
- JavaScript 的方法重载效果
- 常用效果的实现(Javascript的子父页访问、函数调用)
- javascript 事件处理、鼠标拖动效果实现方法详解
- javascript iframe内的函数调用实现方法
- 用原生javascript实现jQuery效果——自定义javascript扩展DOM函数及功能
- dojo的connect方法使用与源代码剖析(在JavaScript里实现类似AOP的效果)
- javascript中实现拖拽drag & drop效果的几种方法
- JavaScript弹出层效果的实现方法
- javascript另类方法高效实现htmlencode()与htmldecode()函数
- javascript setTimeOut方法 实现滑动效果(类似2D加速)
- javascript FormatNumber函数实现方法
- javascript FormatNumber函数实现方法
- 下拉菜单效果的实现方法----css+javascript
- JavaScript 的方法重载效果
- 使用MVC中的HtmlHelper对象的ActionLink方法,实现一个Javascript:void(0)效果,去调用一个JS方法
- javascript中使用replaceAll()函数实现字符替换的方法