开发者社区> 问答> 正文

为什么jQuery要返回jQuery.fn.init对象

在Jquery源码中是这么定义的

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

然后通过Jquery.fn = Jquery.prototype和Jquery.fn.init.prototype=Jquery.fn把它们联系在一起。

为什么要这么做呢?为什么定义Jquery的时候不直接实现而是让Jquery.fn.init实现呢?

真心不懂,请大神们不吝赐教。

展开
收起
a123456678 2016-07-08 10:55:43 2479 0
1 条回答
写回答
取消 提交回答
  • 因为$('#id') 需要返回对象 所以需要return new 一个 但$('#id')返回的对象虽都叫做jquery对象,但其实构造方法中return 并不都是相同类型的对象 需要慢慢体会吧。。

    2019-07-17 19:53:12
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Javascript中的对象 立即下载
Javascript中的函数 立即下载
JavaScript函数 立即下载