我可以使用jQuery()作为构造函数吗?

时间:2012-09-10 00:50:34

标签: jquery

函数jQuery()是一个工厂函数。我可以将它用作构造函数吗?

var ax = jQuery('a');
var bx = new jQuery('a');

他们有相同的含义吗?新对象是否继承了其原型对象?

(我保证:我不会在现实生活中使用它作为构造函数)

2 个答案:

答案 0 :(得分:4)

没有区别,因为它只是返回一些东西:

// Define a local copy of jQuery
jQuery = function( selector, context ) {
    // The jQuery object is actually just the init constructor 'enhanced'
    return new jQuery.fn.init( selector, context, rootjQuery );
},

如果构造函数返回其他东西另一个对象,那就是返回的内容,并丢弃构造的对象。所以...不要使用new jQuery! :)

答案 1 :(得分:2)

没关系,因为jQuery()在内部将返回一个新构造的jQuery对象。

但是,我建议您使用jQuery()(不使用new运算符)。