首页 > web前端 > js教程 > 正文

javascript的必包详解

php中世界最好的语言
发布: 2018-03-16 17:06:39
原创
1746 人浏览过

这次给大家带来javascript的必包详解,使用javascript注意事项有哪些,下面就是实战案例,一起来看一下。

闭包,这个名字好奇怪,
言归正传,先说一下js函数变量作用域
以下例子全部基于局部变量

函数内部访问函数外部变量

demo1:
   var a = 100;    function get() {        console.log(a)    }    get();    // 运行结果:100
登录后复制

在demo1例子中,变量a是在函数外部声明的,在函数get()当中是可以调用到的,调用get()函数,在浏览器控制台会输出100,也就是a的值。

函数外部访问函数内部声明的变量

demo2:
   function get() {        var a = 100;    }    get();    console.log(a);    //运行结果:ReferenceError: a is not defined
登录后复制

在demo2例子中,变量a在函数get()中声明,执行函数get()执行之后,调用变量a,在控制台输出:ReferenceError: a is not defined(a没有被定义),可见,在函数外部是无法直接调用函数内部声明的变量的。
难道就没法获得到函数内部到变量来么?当然不是,这时候闭包就派上用场来,看如下代码:

   function get() {        var a = 100;        return function () {            return a;
        }
    }    var b = get();    console.log(b);    //运行结果:
    /* function () {
        return a;
    }*/
    console.log(b());    // 运行结果:100
登录后复制

函数get()中返回一个函数,这个函数返回你想要获得到到变量,然后在函数外部就可以通过get()()就可以获得到函数内部到变量的值了,

以上是javascript的必包详解的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板