它们是 if 的本机属性window
吗?为什么它被称为 jQuery,jquery 肯定是在 javascript 之后出现的
编辑:我正在浏览 jquery.js 并发现这两行让我想知道它们的确切含义。如果不是window.Jquery 为null,因为JQuery 不是window 的变量?
_jQuery = window.jQuery,
_$ = window.$,
它们是 if 的本机属性window
吗?为什么它被称为 jQuery,jquery 肯定是在 javascript 之后出现的
编辑:我正在浏览 jquery.js 并发现这两行让我想知道它们的确切含义。如果不是window.Jquery 为null,因为JQuery 不是window 的变量?
_jQuery = window.jQuery,
_$ = window.$,
我将从上面评论中链接到的一篇文章中提取:
正如 JavaScript 基础部分所讨论的,JavaScript 中的有效名称几乎可以是任何东西,只要它们不以数字开头并且不包含连字符。因此,上面代码中的 $ 只是 jQuery 函数的一个更短、更方便的名称;实际上,在 jQuery 源代码中,您会在接近尾声时找到:
// Expose jQuery to the global object
window.jQuery = window.$ = jQuery;
当您调用 $() 函数并将选择器传递给它时,您将创建一个新的 jQuery 对象。当然,在 JavaScript 中,函数也是对象,这意味着 $(当然还有 jQuery)也有属性和方法。例如,您可以参考 $.support 属性以获取有关当前浏览器环境支持的信息,并使用 $.ajax 方法发出 AJAX 请求。
基本上,jQuery(当你包含它时)在 window.$ 和 window.jquery 中创建函数。然后为方便起见,它设置 $ 等于这两个 $ 。
jQuery
是一个javascript库
jQuery 是一个快速、小型且功能丰富的 JavaScript 库。它使 HTML 文档遍历和操作、事件处理、动画和 Ajax 之类的事情变得更加简单,它具有易于使用的 API,可在多种浏览器中工作。jQuery 结合了多功能性和可扩展性,改变了数百万人编写 JavaScript 的方式。 http://jquery.com/
jQuery
在页面上包含脚本后,它将$
在全局上下文(窗口)中创建对象。它不是本地的。
这些
_jQuery = window.jQuery,
_$ = window.$,
是覆盖情况下的内部映射。您可以使用该功能.noConflict
恢复以前的window.$
防止与prototype
其他库冲突的值
window
是默认/全局对象。任何时候你分配一个 value,并且没有明确说明它将被附加到的对象,那么它将被分配给全局对象的属性,除非有一个局部变量首先将它分配给它(参见第 3 节.b. 的PutValue );
任何全局都将成为它的属性。