JavaScript function与arguments

本文深入探讨了JavaScript中函数的定义与调用方式,包括使用arguments对象进行参数数量检查,利用匿名函数实现立即执行的功能,以及通过new Function动态创建函数等高级特性。此外,还介绍了如何利用call和apply方法来改变函数的上下文。

【function定义】

 A.

function alertArgsCount()
{
   alert("函数调用时的参数个数:"+arguments.length);
}

 

B.

var funBody="if(a>b) return a-b; else return b-a;"
var  getDiffValue=new Function("a","b",funBody);

alert(getDiffValue(12,125));
alert("函数定义时的参数个数为:"+getDiffValue.length);

 

【函数调用】

setTimeout(function add1(x,y){alert(x+y)},2000,3,5)会在2秒后弹出8.(但在ie下会出错)

 var func=new function(){this.a="func"}
    var myfunc=function(x){
        var a="myfunc";
        alert(this.a);
        alert(x);
    }
    myfunc.call(func,"var");//分别弹出了func和var

func.call(func1,var1,var2,var3)对应的apply写法为:func.apply(func1,[var1,var2,var3])

 

【arguments调用】

function Base()
{
   if(arguments.length==1)
     {
      if(arguments[0]>0)
          {
            alert("大于0");          

          }
       else
            alert("不大于0");
      }
    else if(arguments.length==2)
      {           
          var r=(arguments[0]>arguments[1]);
          switch(r)
          {
              case true: alert("true"); break;
              case false: alert("false");break;
              default: alert("do not know!");
          }

      }     
}     

    Base(10);
    Base(10,20);   

 【匿名函数】

1 (function(obj){
2   // ToDo about obj
3 })(testobject);

 

转载于:https://www.cnblogs.com/AspDotNetMVC/archive/2010/11/14/1877057.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值