使用js内置对象arguments求函数的所有参数的和
2017-07-18 18:35
537 查看
今天做一个面试题时遇到一个问题,如下:
函数 useArguments 可以接收 1 个及以上的参数。请实现函数 useArguments,返回所有调用参数相加后的结果。本题的测试参数全部为 Number 类型,不需考虑参数转换。
一开始我想?不会这么简单吧,就随便做了个函数相加的方法提上去了,谁知道提示错误,然后又仔细的审了审题,发现题目第一句话的意思原来是我理解错了,人家的意思是我不管输入几个参数都可以相加减,而不是直接写死的就写2个函数相加,也要三个相加,4个,5个。。。想通以后一时还真有点懵了,这是嘛意思。以前不都是传几个参数接几个,如果不写死参数漏掉了怎么办?后来在网上找了找才发现原来js函数有个内置对象arguments。
function useArguments() {
var sum=0;
for(var i in arguments){
alert(i);
sum = sum+arguments[i]
}
return sum;
}
console.log(useArguments(1,2,5))如上,我命名的函数并没有接参数,但只要在函数中用到arguments这个函数,遍历出它就是调用时输入的所有参数了。
函数 useArguments 可以接收 1 个及以上的参数。请实现函数 useArguments,返回所有调用参数相加后的结果。本题的测试参数全部为 Number 类型,不需考虑参数转换。
一开始我想?不会这么简单吧,就随便做了个函数相加的方法提上去了,谁知道提示错误,然后又仔细的审了审题,发现题目第一句话的意思原来是我理解错了,人家的意思是我不管输入几个参数都可以相加减,而不是直接写死的就写2个函数相加,也要三个相加,4个,5个。。。想通以后一时还真有点懵了,这是嘛意思。以前不都是传几个参数接几个,如果不写死参数漏掉了怎么办?后来在网上找了找才发现原来js函数有个内置对象arguments。
function useArguments() {
var sum=0;
for(var i in arguments){
alert(i);
sum = sum+arguments[i]
}
return sum;
}
console.log(useArguments(1,2,5))如上,我命名的函数并没有接参数,但只要在函数中用到arguments这个函数,遍历出它就是调用时输入的所有参数了。
相关文章推荐
- JS函数的参数对象arguments在严格模式下的限制
- js 函数的参数 问题 arguments对象 及闭包
- js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法
- js函数参数对象arguments对象分析
- js、函数的分类、对象、arguments、函数参数
- JS函数的参数(arguments)的使用
- 【JS--基础--函数】--隐含参数对象arguments的callee 属性
- js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法
- 深入理解JS函数的参数(arguments)的使用
- 20180302JS的深入学习:函数的深入用法、函数的参数、JS内置对象、动态时钟及验证表单的练习、JS原型链的简单了解
- JS函数的参数(arguments)的使用(形参和实参)
- js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法
- js中每个函数中隐含的arguments对象,用语表示调用时实际传递的参数
- 使用arguments对象验证函数的参数是否合法
- JS函数的参数(arguments)的使用
- 【学习-水滴石穿】 JavaScript用arguments对象访问函数的参数
- javascript Arguments对象——函数的实际参数
- javascript Arguments对象——函数的实际参数
- JS学习 用 arguments 对象模拟函数重载
- 显示js对象所有属性和方法的函数