arguments对象
Posted 代码小精灵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arguments对象相关的知识,希望对你有一定的参考价值。
ECMAScript函数不介意传递进来多少参数,也不会因为参数不统一而错误。实际上,函数体内可以通过arguments对象来接收传递进来的参数 .
Function box(){ return arguments[0]+‘|‘+arguments[1]; //得到每次参数的值 } alert(box(1,2,3,4,5,6)); //传递参数
arguments对象的length属性可以得到参数的数量。
function box(){ return arguments.length; //得到6 } alert(box(1,2,3,4,5,6));
我们可以利用length这个属性,来智能的判断有多少参数,然后把参数进行合理的应用。比如,要实现一个加法运算,将所有传进来的数字累加,而数字的个数又不确定。
function box(){ var sum=0; if(arguments.length==0) return sum; //如果没有参数,退出 for(var i=0;i<arguments.length;i++){ //如果有,就累加 sum=sum+arguments[i]; } return sum; //返回累加结果 } alert(box(5,9,12));
ECMAScript中的函数,没有像其他高级语言那种函数重载功能。
function box(num){ return num+100; } function box(num){ //会执行这个函数 return num+200; } alert(box(50)); //返回结果
以上是关于arguments对象的主要内容,如果未能解决你的问题,请参考以下文章
RuntimeError: ‘lengths’ argument should be a 1D CPU int64 tensor, but got 1D cuda:0 Long tensor(代码片段