美文网首页
模块化编程

模块化编程

作者: 米卡卡米 | 来源:发表于2019-08-20 20:07 被阅读0次

    1.模块化编程,就是把每个功能模块的js,放在一个js文件中,然后一个个引用。每个模块无法进行影响
    尽量不使用全局变量,用局部变量
    在ES 5中 只有函数又局部变量
    于是我们声明一个 function xxx,然后xxx.call()
    但是xxx是全局变量(全局函数)
    所有我们不能给函数名字 所以是function(){}.call()
    但是这样写 Chrome会报错,语法错误
    所以可以
    !function(){}.call() ====>如果不在乎返回值的话,可以用这个方法
    如果说 JS 文件 A和B需要进行一定的读取之类的 可以利用Window 因为Window是全局变量。
    文件A.js

    
    !function () {
        var person = {
            name="mika",
            age=20
        }
        window.personGrowUp = function () {
            person.age += 1
            return person.age
        }
        //上面两个就叫闭包.闭包可以用来对数据隐藏细节
    //可以控制访问。如果想要访问age,可以访问的到,但是如果想访问name,就访问不到
    }
    

    文件B.js

    !function () {
        var newAge = window.personGrowUp()
        console.log(newAge)
    }.call()
    

    在文件A.js中
    1.立即执行函数使得person 无法被外部访问
    2.闭包使得匿名函数可以操作person
    3.window.personGrowUp 保存了匿名函数的地址
    4.任何地方都可以使用 window.personGrowUp
    =>任何地方都可以使用window.personGrowUp 操作person,但是不能够直接访问person

    相关文章

      网友评论

          本文标题:模块化编程

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