作家
登录

【深入浅出jQuery】源码浅析--整体架构

作者: 来源: 2017-07-17 16:03:33 阅读 我要评论

3)当我们在链式调用 end() 办法后,内部就返回当前 jQuery 对象的 prevObject 属性,完成回溯。

jQuery 正则与细节优化


不得不提 jQuery 在细节优化上做的很好。也存在很多值灯揭捉?习的小技能,下一篇将会以 jQuery 中的一些编程技能为主题行文,这里就不再赘述。

1)懂得尝尝试应用 Javascript 正则相干 API,包含了 test() 、WordStr() 、match() 、exec() 的用法;

2)区分膳绫擎 4 个办法,哪个是 RegExp 对象办法,哪个是 String 对象办法;

3)懂得简单的零宽断言,懂得什么是匹配然则不捕获以及匹配并且捕获。

jQuery 变量冲突处理

最后想提一提 jQuery 变量的冲突处理,经由过程一开端保存全局变量的 window.jQuery 以及 windw.$ 。

当须要处理冲突的时刻,调用静态办法 noConflict(),让出变量的┞菲握权,源码如下:

  1. (function(window, undefined) {  
  2.     var  
  3.         // Map over jQuery in case of overwrite  
  4.         // 设置别号,经由过程两个私有变量映射了 window 情况下的 jQuery 和 $ 两个对象,以防止变量被强行覆盖  
  5.         _jQuery = window.jQuery,  
  6.         _$ = window.$;  
  7.    
  8.     jQuery.extend({  
  9.         // noConflict() 办法让出变量 $ 的 jQuery 控制权,如许其他脚本就可以应用它了  
  10.         // 经由过程全名替代简写的方法来应用 jQuery   
  11.         // deep -- 布尔值,指导是否许可彻底将 jQuery 变量还原(移交 $ 引用的同时是否移交 jQuery 对象本身)  
  12.         noConflict: function(deep) {  
  13.             // 断定全局 $ 变量是否等于 jQuery 变量  
  14.             // 如不雅等于,则从新还原全局变量 $ 为 jQuery 运行之前的变量(存储在内部变量 _$ 中)  
  15.             if (window.$ === jQuery) {  
  16.                 // 此时 jQuery 别号 $ 掉效  
  17.                 window.$ = _$;  
  18.             }  
  19.             // 当开启深度冲突处理并且全局变量 jQuery 等于内部 jQuery,则把全局 jQuery 还原成之前的状况  
  20.             if (deep && window.jQuery === jQuery) {  
  21.                 // 如不雅 deep 为 true,此时 jQuery 掉效  
  22.                 window.jQuery = _jQuery;  
  23.             }  

      推荐阅读

      深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

    【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路! 新买回来的不带水冷公版GPU,在满负载运行的时刻,温度大年夜室温立时飙升到85度,并且模型练习不是几分钟>>>详细阅读


    本文标题:【深入浅出jQuery】源码浅析--整体架构

    地址:http://www.17bianji.com/lsqh/36245.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)