ghx88

Arguments对象的应用

    在一个函数体内,标识符arguments具有特殊含义,它是调用对象的一个特殊属性,用来引用Arguments对象。Arguments对象像数组,可以按照数字获取传递给函数的参数值。
例:

<HTML><HEAD>
<TITLE></TITLE>
<META content="Microsoft Visual Studio" name=GENERATOR>
<META http-equiv=Content-Type content="text/html; charset=UTF-8">
<script language=javascript>
  
function add()
  
{
    
var total=0;
    
for(var i=0;i<arguments.length;i++)
    
{
    
//检查输入的参数是否是数字
    if( (typeof arguments[i]) !="number")
    
{
           window.alert(
"输入的参数不是数字,程序中止!");
           
return ;
    }

    
//累加
    total += arguments[i];
    }

    window.alert(total);
  }
    

</script>
</HEAD>
<BODY>

 
<input id=Button2 type=button value=Button onclick="add(212,434,32,3432,2)">

</BODY></HTML>

callee属性
    Arguments对象定义了callee属性,用来引用当前正在执行的函数。这对未命名的函数调用自身非常有用。
//阶乘函数
function(x)
{
   
if(x<=1return 1;
   
return x*arguments.callee(x-1);
}

函数的length属性是指要求的参数个数(arguments.callee.length),而arguments.length的是指实际传递的参数个数(arguments.length)。

posted on 2006-04-09 22:27  ghx88  阅读(224)  评论(0编辑  收藏  举报

导航