js的语法不支持重载!--arguments
来源:互联网 发布:p5.min.js在哪里下载 编辑:程序博客网 时间:2024/05/08 19:24
重载(overload): 相同函数名,不同参数列表的多个函数
可在调用时,根据传入参数的不同
自动选择对应的函数执行!
为什么: 减轻调用者的负担!
问题: js的语法不支持重载!
js不允许多个同名函数同时存在。
如果同时存在,最后定义的函数会覆盖之前所有同名函数
解决: arguments对象
什么是arguments: 函数中,专门接收所有传入的参数值的对象。
arguments是类数组对象: 长的像数组的对象
只有两点和数组相同:
1. 都可用下标访问每个元素
比如: 获得第二个参数值: arguments[1]
2. 都有length属性记录参数个数:
比如: arguments.length
强调: 类数组对象不是数组,
几乎所有数组API,都不能调用!
可在调用时,根据传入参数的不同
自动选择对应的函数执行!
为什么: 减轻调用者的负担!
问题: js的语法不支持重载!
js不允许多个同名函数同时存在。
如果同时存在,最后定义的函数会覆盖之前所有同名函数
解决: arguments对象
什么是arguments: 函数中,专门接收所有传入的参数值的对象。
arguments是类数组对象: 长的像数组的对象
只有两点和数组相同:
1. 都可用下标访问每个元素
比如: 获得第二个参数值: arguments[1]
2. 都有length属性记录参数个数:
比如: arguments.length
强调: 类数组对象不是数组,
几乎所有数组API,都不能调用!
何时创建: 在调用函数时,自动创建的函数局部变量!
eg:
<script>
function add(/*n个加数*/){
//遍历arguments中每个元素,同时声明sum=0;
for(var i=0,sum=0;i<arguments.length;i++){
//将当前元素的值累加到sum上
sum+=arguments[i];
//遍历结束
}//返回sum
return sum;
}
//测试
console.log(add(3,5,8));//16
console.log(add(12,14,16,18));//60
console.log(add(1,2,3,4,5));//15
</script>
0 0
- js的语法不支持重载!--arguments
- JS不支持重载
- js不支持重载的解决方案
- javascript不支持重载
- python不支持重载函数
- [AjaxPro.AjaxMethod]不支持重载
- jstl中自定义的function不支持重载
- C语言支不支持重载?
- 由dwr不支持重载的方法探究dwr的运行机制
- 为什么c++支持重载而C语言不支持重载
- C语言中不支持重载,而C++支持
- C语言为什么不支持重载,而C++支持
- “Resources参数不支持重复项”错误的解决
- Objective-C runtime之消息(二)--为什么iOS不支持重载
- C# Resources参数不支持重复项-Form拷贝出现的错误
- VS Resources参数不支持重复项
- mysql中replace函数不支持正则
- JS的arguments对象
- 《第一行代码》 随手笔记——第一章
- java中wait()方法的一点总结
- HTML5学习(二)
- 刷题中Java常用的数据结构
- java类的加载过程
- js的语法不支持重载!--arguments
- 记录一下看过的书
- php
- 大话设计模式(程杰)笔记(一)
- Gridview数据控件的七种字段类型
- CPU 和内存虚拟化原理 - 每天5分钟玩转 OpenStack(6)
- 微信公众号支付安卓和WP机都能支付,苹果支付不了的问题解决
- 大话设计模式(程杰)笔记(二)
- 匿名函数