JavaScript中的arguments对象

arguments对象被用于函数中,它类似于函数参数组成的数组,但它具有不同于数组的额外属性。
即使实参个数超过形参个数,多余的参数依然可以通过该对象访问。

function  maxNum()
{
    
var m = Number.NEGATIVE_INFINITY; //负无穷大
    for(var i=0;i<arguments.length;i++)
    
{//遍历每个参数
        if(arguments[i] > m)
            m 
= arguments[i];
    }

    
return m;
}


var  largest  =  maxNum( 1 , 10 , - 19 , 100 , 999999 , 89 );
document.write(
" largest= "   +  largest  +   " <br/> " );

function  f1(x)
{
    document.write(
"x=" + x + "<br/>");
    arguments[
0= "New"//改变x的值
    document.write("x=" + x + "<br/>");
}


f1(
" Old " );

/*arguments对象的callee属性,它指代当前对象的所属函数*/
function  factorial(x)
{
    
if(x <= 1)
        
return 1;
    
return x*arguments.callee(x-1); //调用函数本身    
}


document.write(
" 5!= "   +  factorial( 5 ));

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值