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

本文详细介绍了jQuery 1.11.x如何集成AMD模块化框架,将源码切分为独立模块,利用Deferred进行依赖整合,并优化了模块结构。文章深入探讨了var文件夹的作用,以及在不同环境(如Node.js)下如何适配jQuery的使用。

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使.


    

 

转载于:https://www.cnblogs.com/yakun/p/3789932.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值