美文网首页
js闭包和命名空间总结

js闭包和命名空间总结

作者: 李牧敲代码 | 来源:发表于2019-05-19 17:11 被阅读0次

    js的闭包和命名空间在平常用的还是蛮多的,尤其是面试的时候经常会问,这里对js闭包和命名空间做个总结。

    1. js中的命名空间用于解决命名冲突的问题

    2. js的闭包是指一个函数能够引用其他函数内部变量,这个能力或者行为就是闭包

    比如:

    var obj1 = {
        name: 'test1'
    }
    var obj2 = {
        name: 'test2'
    }
    

    我们就可以通过obj1.name和obj2.name的形式分别取得obj1和obj2下的name,而不会发生命名冲突。
    再比如:

    function Obj() {
        var globaName = 'test'
    
        function f1() {
            console.log(globaName)
        }
        function f2() {
            console.log(globaName)
        }
    }
    

    这里f1和f2都能读取Obj下的globalName,这就形成了闭包。
    闭包的主要应用场景之一就是模块化编程!

    相关文章

      网友评论

          本文标题:js闭包和命名空间总结

          本文链接:https://www.haomeiwen.com/subject/vcqaaqtx.html