zoukankan      html  css  js  c++  java
  • JS闭包(2)

    利用闭包的特点,我们可以在封装自己的模块的时候只向外暴露我们模块中的数据,而不让其修改。

    1.第一中封装的方式,新建一个myModule.js文件,这个模块的作用是对外部提供明天和后天的天气。

    在myModule.js中:

    function myModule(){

      var tomorrow = '晴';

      var dayAfterTomorrow = '阴';

      function getTomorrowWeather(){

        console.log(tomorrow );

      }

      function getDayAfterTomorrowWeather(){

        console.log(dayAfterTomorrow );

      }

      return {

      getTomorrowWeather:getTomorrowWeather,

      getDayAfterTomorrowWeather:getDayAfterTomorrowWeather

      };

    }

    在使用该模块时:<script src = "myModule.js"></script>

    <script >

      var module = myModule();

      module .getTomorrowWeather();

      module .getDayAfterTomorrowWeather();

    </script>

    2.第二种封装方式,

    新建一个myModule.js文件,在myModule.js中:

    (function myModule(){

      var tomorrow = '晴';

      var dayAfterTomorrow = '阴';

      function getTomorrowWeather(){

        console.log(tomorrow );

      }

      function getDayAfterTomorrowWeather(){

        console.log(dayAfterTomorrow );

      }

      window.myModule =  {

      getTomorrowWeather:getTomorrowWeather,

      getDayAfterTomorrowWeather:getDayAfterTomorrowWeather

      };

    })();//即在引用该模块的时候就直接执行里面的这个函数,将模块返回的对象直接绑定在window对象中,外部就可以直接访问到这个返回的模块对象直接使用。

    在使用该模块时:<script src = "myModule.js"></script>

    <script >

      myModule.getTomorrowWeather();

      myModule.getDayAfterTomorrowWeather();

    </script>

  • 相关阅读:
    初识Node
    从服务器获取信息的方式
    引用对象的指针传递
    使用定时器来控制一次执行的任务数量
    JS字符串拼接的方法及性能比较
    提升JS比较效率的方式
    DOM访问优化
    JS数据存取效率的优化
    JS脚本加载顺序及优化
    python 基本用法
  • 原文地址:https://www.cnblogs.com/maycpou/p/12251939.html
Copyright © 2011-2022 走看看