我的jQuery源码读后感-jquery1.11.x 集成了 AMD

jquery1.11.x 集成了 AMD

AMD 加入到了 jQuery, jQuery 把源码切分成各个逻辑模块.

  1. ready 整合成依赖 Deferred 的模块.
  2. 有些模块被切分成一些更加利于维护的片段.
  3. var 文件夹指定的模块只包含共享的变量声明.
    

     
 (function( global, factory ) {

     if( typeof module === "object" && typeof module.exports === "object" ) {

         // 对于CommonJS的和CommonJs的类似环境中, 如果存在一个适当的window,
         // 则执行global工厂方法,获取jQuery对象;
         // 在那些天生不拥有window,document的环境中,比如Node.js,
         // 弄了个jQuery做的factory伺候module.exports;
         // 这个突出了建立一个真正window的需求
         // e.g var jQuery = require("jquery")(window);

         module.exports = global.document ? factory( global, true) : function( w ) {
             if( !w.document ){
                 throw new Error(" jQuery requires a window with a document" );
             }
             return factory( w );
         };
     } else {
         factory( global );
     }

 }(typeof window !== "undefined" ? window : this, function( window, noGlobal ){
     var jQuery = {};
     return jQuery;
 }));
 // 大概意思就是jQuery现在支持Node了,在Node中把global作为window使.


    

 

我的jQuery源码读后感-jquery1.11.x 集成了 AMD,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。