在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实现呢?
真心不懂,请大神们不吝赐教。
因为$('#id') 需要返回对象 所以需要return new 一个 但$('#id')返回的对象虽都叫做jquery对象,但其实构造方法中return 并不都是相同类型的对象 需要慢慢体会吧。。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。