Jquery 何时使用$.extend({…})?
我的问题是什么时候应该使用$.extend(…)?Jquery 何时使用$.extend({…})?,jquery,Jquery,我的问题是什么时候应该使用$.extend(…)? 在许多jquery插件中,我看到jquery对象本身扩展了新的(全局)函数: $.extend({ doSth: function() { alert('do sth here'); } } 扩展jquery对象而不是创建包含函数的全局对象有什么好处: var myLib = { doSth: function() { alert('do sth here'); } } 目前我
在许多jquery插件中,我看到jquery对象本身扩展了新的(全局)函数:
$.extend({
doSth: function() {
alert('do sth here');
}
}
扩展jquery对象而不是创建包含函数的全局对象有什么好处:
var myLib = {
doSth: function() {
alert('do sth here');
}
}
目前我正在开发一个小的js库。在该库中,$.fn对象被扩展,我需要一些全局函数。但我不知道全局函数放在哪里:在我自己的库对象中还是放在jquery对象中 致以最诚挚的问候,
Biggie给出一些上下文,因为问题并不完全清楚:对于那些不知道的人,使用单个参数扩展
jQuery
对象
通常不需要这样做,除非您添加了与库非常相关的内容,否则我会将其保存在您自己的名称空间中。它在
$
下没有任何用途,唯一可能发生的事情是以后与新的jQuery核心更新发生潜在的命名冲突
如果您有一个或两个与插件配套的静态方法,其中您同时扩展了$.fn
和$
,那么我认为这是可以接受的,但是如果您有许多方法(听起来像这样),那么它们在$
上并没有真正的好处
老实说,单参数版本存在的原因(或者更准确地说,是在第一时间添加的)是为了jQuery本身,为了内部使用(几乎每个“部分”都使用它,请查看它,作为示例),我不确定是否有意使用外部,他们只是让它保持打开/可扩展状态“单参数版本存在的原因是jQuery本身“--对于插件也是如此。@lonesomeday-不太可能,添加它的原因是为了jQuery,虽然插件可以使用它,但大多数插件将扩展
jQuery.fn
,而不是jQuery,插件不需要在jQuery对象上使用它们的静态函数,但是它们必须在$.fn
上才能在链中使用。对不起,“我已经超越了我自己。@lonesomeday-这是一个正确的观点,我更新了,希望能更清楚地说明它,我知道你怎么能这样理解它……希望现在更清楚:)