每天 10 分钟,学习 JavaScript —— (十八)闭包的应用_自定义JS模块

117 阅读1分钟

定义JS模块

  • 具有特定功能的JS文件
  • 将所有的数据和功能都封装在一个函数内部(私有的)
  • 只向外暴露一个包含n个方法的对象或函数
  • 模块的使用者,只需要通过模块暴露的对象调用方法来实现对应的功能 定义 myModel
    function myModel() {
      var msg = 'Hello'
      function fun1() {
        console.log('fun1() ' + msg.toUpperCase)
      }
      function fun2() {
        console.log('fun1() ' + msg.toLowerCase)
      }
      // 向外暴露
      return {
        fun1: fun1,
        fun2: fun2
      }
    }

引用 myModel.js

    <script type="text/javascript" src="myModel.js"></script>
    <script type="text/javascript">
      var model = myModel()
      model.fun1()
      model.fun2()
    </script>