JS函数

1.声明函数
  • 函数声明
    function fun(){};
    fun();
  • 字面量函数
    var s = function(){};
    s();
  • 构造函数
    function Fun(){};
    var fun=new Fun();
2.回调函数

某个动作做完之后,才执行的函数。

function move( obj , attr , step , stopValue , fn ){
     // if(fn){ fn(); }
     fn&&fn();   //如果发现一个为假,就不会判断后面的!
}

使用回调函数,可解决内嵌调用本函数的死循环现象。

btn.onclick=function(){
     move(oDiv,"left",10,500,function(){
            move(oDiv,"top",10,500);
     });
}
3.伪函数
<a href="javascript:fun();"></a>
//执行JavaScript里的代码,忽略默认事件,如<a href="javascript:void(0);"></a>。
4.匿名函数
(function(){ alert("a"); })();
(function(name){ alert(name); })(name);
//匿名函数可以自执行。
5.闭包
  • 闭包是指函数里嵌套函数

    function fun(){
      //变量a会长期存于内存中(类似全局变量),直到浏览器关闭。
      var a=10;
      return function(){
          alert(a+1);
      }
    }
    var s=fun();
    s();//11。
  • 闭包可以避免全局污染。其可拥有私有变量a,不需要设置全局变量a.

  • 闭包会引起内存泄漏(导致闪退或系统崩溃),可手动释放。

  • 闭包会导致this指向错乱。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值