在网上看到一段代码,有些疑惑,如下: var events=require(‘events’); var util=require(‘util’); function _base(){ this.emitter=new events.EventEmitter(this); }; util.inherits(_base,events.EventEmitter); //继承 _base.prototype.onEvent=function(eventName,callback){ this.emitter.on(eventName,callback); } _base.prototype.emitEvent=function(eventName,arg){ this.emitter.emit(eventName,arg); } module.exports=_base; 代码老了一些,有写疑惑 1、this.emitter=new events.EventEmitter(this); 觉得emitter=new events.EventEmitter(); 觉得this 有必要么?很多时候,一些代码,这些this 都可以省略吧。写成emitter=new events.EventEmitter(); 2、util.inherits 这段是必须的吗?(es6 已经是 class 和 extends,可以替代吧) 3、然后,我把 prototype 写法再改一下,塞到base 函数内,比如: function _base(){ this.emitter=new events.EventEmitter(this); return { onEvent: function(eventName,callback){ this.emitter.on(eventName,callback); } }; }; 这样也可以吧。。。 就上面问题,大家給个意见吧
关于util和event的一些疑惑
发布于 8 年前 作者 cnlile 4378 次预览 最后一次回复是 8 年前 来自 问答
2 回复
作者
作者其他话题
- 建议大家不要使用node-schedule这个模块了吧,被坑了一下
- nodejs 服务器接受请求失败的问题
- 关于mysql lock table 在nodejs cluster 模式下的无法使用
- 记一次nodejs 服务密集访问造成内存泄漏处理经历
- javascript 闭包的选择问题?!
- 关于C/C++ Addons class 方式的一些疑问。
- 怎么把一个stream 写到文件中,求助!
- 转发--Koa的坑与在express上使用async/await
- 关于express用redis 做session存储的方式---回答某群友
- Loopback 的问题,请高手帮忙看看,解答一下
- 一个http 到websocket 的推送服务器雏形代码,有些问题请大神指教
- 怎么解决mongoose的过期 library问题
- mongoose Multi-mongos 方式连接,是否我出用错了。
- 关于模块封装的一些写法,看看有啥问题没有?求帮助
都是版本升级带来的困惑啊,都是老的做法