匿名函数与闭包

  匿名函数自运行的三种方式

    1、(function(){
                    alert("abc");
                })();
                使用()将匿名函数包围,然后再调用,这叫做匿名函数的自运行

     2、(function(){

      alert("abc");

      }());

     3、加操作符

    +/- function(){

      alert("abc");

    }();

  闭包

  1)正常情况下外部无法访问函数内部的内容
            2)利用函数内部可访问外部变量的特性, 在函数内部返回一个函数
            3)垃圾回收机制
            js内部定时扫描内存,并清理无引用对象;

            结论:一个可以从外部访问内部变量的函数称之为闭包
            闭包,可以访问函数内部的局部变量,并让其长期驻留内存

  eg:

// 闭包函数
   function output(){
       var res = 10;
       return function(){
                console.log(res++);
       }
   }
var fn = output(); fn();//打印10 fn();//打印11 fn();//打印12

 

posted @ 2016-07-09 10:26  小前PJ  阅读(109)  评论(0编辑  收藏  举报