jQuery 技术内幕》读书笔记(1)——总体架构

xiaoxiao2021-04-16  66

《jQuery 技术内幕》读书笔记(1)——总体架构

文中的代码来自 jquery 1.12.4

核心特性

兼容主流浏览器具有独特的链式语法和短小清晰的多功能接口具有高效灵活的 CSS 选择器, 并且可对 CSS 选择器进行扩展拥有便捷的插件扩展机制和丰富的插件

总体架构

jQuery 的模块可以分为 3 部分:入口模块、 底层支持模块、功能模块

自调用匿名函数

(function( global, factory ) { }( typeof window !== undefined ? window : this, function( window, noGlobal ) { var jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context ) } if(!noGlobal) { window.jQuery = window.$ = jQuery } return jQuery })); 为什么要创建这样一个自调用匿名函数? 创建一个特殊的函数作用域,该作用域中的代码不会和已有的同名函数、方法和变量以及第三方库冲突。在这个自调用匿名函数的最后,通过手动把变量 jQuery 添加到 window 对象上,明确地使变量 jQuery 成为公开的全局变量,而其他的部分将是私有的 为什么要传入window对象 当在 自调用函数内部访问 window 对象时,不需要将作用域链回退到顶层作用域,从而可以更快的访问 window 对象可以在压缩代码的时候进行优化 要在自动用匿名函数的最后加上分号(;)
转载请注明原文地址: https://www.6miu.com/read-4818153.html

最新回复(0)