gpt4 book ai didi

jquery - jQuery 如何实现将 $ 设为 jQuery 函数的别名?

转载 作者:行者123 更新时间:2023-12-03 21:47:27 30 4
gpt4 key购买 nike

我在理解 $ 符号作为 jQuery 函数的别名时遇到了一些麻烦,尤其是在插件中。你能解释一下 jQuery 如何实现这种别名:它如何定义 '$' 作为 jQuery 函数的别名?这是第一个问题。

其次,您能否解释一下以下代码如何/为什么将“$”映射到插件定义中的 jQuery 函数,以及为什么如果您不这样做,您的插件可能会与可能使用美元的其他库发生冲突标志?

(function( $ ){
$.fn.myPlugin = function() {
// Do your awesome plugin stuff here
};
})(jQuery);

最佳答案

它只是声明一个变量。请参阅here

jQuery 本身是一个大型的自执行函数。这意味着它声明一个函数然后运行它。在函数内部,它声明了本地 jQuery 对象,它是一个函数。

然后它将在其末尾设置window.jQuery = window.$ = jQuery

这会将 window.jQuerywindow.$ 设置为本地 jQuery 对象。我们可以通过将全局变量设置为 window 对象的属性来设置它们。

现在,window.jQuerywindow.$ 都指向 jQuery,因为对象是通过引用传递的。

var jQuery = (function() {

var jQuery = function( selector, context ) {
...
};

...

return (window.jQuery = window.$ = jQuery);

}());

它实际上声明了 jQuery 两次,以提高效率,因为在查找变量时,它不必向上查找额外的外部函数。

您可以使用两个这样的赋值,因为 (var a = b) === b

正如其他人提到的,$ 是一个合法的变量名,并且函数是第一类对象,因此我们可以将它们视为对象也有助于实现这一点。

关于jquery - jQuery 如何实现将 $ 设为 jQuery 函数的别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4797956/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com