之前在学习中,总会遇到一些问题,变量在函数外,或者在函数外的一些情况

作用域链和活动对象

1.闭包:有权访问另一个函数作用域中变量的函数

创建闭包常见的方式:在一个函数内部在创建一个函数,比如内部函数

在函数外调用了内部函数,并且还调用了内部函数的变量

结果:1 1 1 1

每次都new一个内部变量,都加1

 1 function outerFn() {
 2         document.write("外部函数"+"<br/>");
 3         function inner() {
 4             var innerVar = 0;
 5             innerVar++;
 6             document.write("内部函数"+"<br/>");
 7             document.write("内部变量"+"intteVar=" +innerVar+"<br/>");
 8         }
 9        //通过返回内部函数
10         return inner;
11     }
12     //在函数外调用函数
13     var fnRef = outerFn();
14     fnRef();
15     fnRef();
16     var fnRef2 = outerFn();
17     fnRef2();
18     fnRef2();

全局变量

内部函数引用全局变量

结果:1 2 3 4

 1  var i = 0;
 2     function outer() {
 3         document.write("外部函数"+"<br/>");
 4         function inner() {
 5             i++;
 6             document.write("内部函数"+"<br/>");
 7             document.write("全局变量"+"i=" +i+"<br/>");
 8         }
 9         return inner;
10     }
11     var  out = outer();
12     out();
13     out();
14     var out2 = outer();
15     out2();
16     out2();

结果:1 2 1 2

 1 function outer() {
 2         var i = 0;
 3         document.write("外部函数"+"<br/>");
 4         function inner() {
 5             i++;
 6             document.write("内部函数"+"<br/>");
 7             document.write("全局变量"+"i=" +i+"<br/>");
 8         }
 9         return inner;
10     }
11     var  out = outer();
12     out();
13     out();
14     var out2 = outer();
15     out2();
16     out2();

优质内容筛选与推荐>>
1、mysql api
2、前端 ---> HTML
3、检测设备平台,操作系统,方向 Javascript 库:Device.js
4、Silverlight 在线 demo
5、模拟/sgu 127 Telephone directory


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn