课程
/前端开发
/jQuery
/jQuery源码解析(架构与依赖模块)
在init构造函数中,不要最后一行return this,结果又什么不一样?
2016-08-11
源自:jQuery源码解析(架构与依赖模块) 2-3
正在回答
确实暂时去掉 return this,没什么影响,但是以后调用调用init方法再调用其它方法就不能链式调用了
为了链式调用方便。
比如一个对象:A的某个方法函数执行结果返回对象A自身时(this),可以再次调用A对象的其他方法;其他方法如果返回值依然为自身,还可以继续调用A的方法...
例:shape.set(x).set(y).set(z).set(type)
我没看出 区别,或许是作用域的问题
举报
由浅入深地剖析jQuery库的设计与实现,揭开框架背后的秘密
1 回答为什么init作为构造函数可以解决递归循环
2 回答构造函数返回 new jQuery.fn.init() 相比 if(!this instanceof jQuery) {return new jQuery();}this.init();有什么明显好处?
4 回答jQuery中的init方法里面的return this;是否可以删除呢?
2 回答return this的作用是什么呢?
1 回答为何不用instanceof的方式来实现构造器的无new形式而用init?