课程
/前端开发
/Node.js
/进击Node.js基础(二)
他既然继承了,就拥有了他的所有方法,为什么前面还要给个 call(this)来劫持呢??求教老师。
2017-07-28
源自:进击Node.js基础(二) 2-4
正在回答
这里是为了实行原型继承,call本身只是对象冒充,不具备继承原型链上的方法;首先让Transform这个构造出来的对象得到stream.Transform所具有的方法,因为util的inherit方法是让Transform对象继承于stream.Transform的原型(并不是让stream.Transform与Transform形成继承关系,所以Transform在没call()前不具备stream.Transform的方法,这一点可以去深入了解nodejs的util的inherit方法),再来重写stream.Transform上原型的方法。
慕田峪6302525
举报
本教程带你攻破 Nodejs,让 JavaScript流畅运行在服务器端