nodejs笔记--Events篇(二)
常用事件 /*调用events模块,获取events.EventEmitter对象 */ var EventEmitter = require('events').EventEmitter; var events = new EventEmitter();/*EventEmitter.on(event, listener) 为事件注册一个监听参数1:event 字符串,事件名参数2:回调函数 */ events.on('some_events', function(foo, bar) {console.log("第1个监听事件,参数foo=" + foo + ",bar="+bar ); });console.log('第一轮'); events.emit('some_events', 'Wilson', 'Zhong'); // 返回trueconsole.log('第二轮'); events.emit('some_events', 'Wilson', 'Z');events.on('whatName',function(name){console.log('My name is '+name); }); events.emit('whatName','finder');
其它事件emitter.addListener(event, listener) emitter.on(event, listener) emitter.once(event, listener) emitter.removeListener(event, listener) emitter.removeAllListeners([event]) emitter.setMaxListeners(n) EventEmitter.defaultMaxListeners emitter.listeners(event) emitter.emit(event[, arg1][, arg2][, ...]) Class Method: EventEmitter.listenerCount(emitter, event)
特殊的事件Error引用自Node.js开发指南:EventEmitter 定义了一个特殊的事件 error,它包含了“错误”的语义,我们在遇到 异常的时候通常会发射 error 事件。当 error 被发射时,EventEmitter 规定如果没有响 应的监听器,Node.js 会把它当作异常,退出程序并打印调用栈。我们一般要为会发射 error 事件的对象设置监听器,避免遇到错误后整个程序崩溃事件的继承 var util = require("util"); var events = require("events");function MyStream() {events.EventEmitter.call(this); }util.inherits(MyStream, events.EventEmitter);MyStream.prototype.write = function(data) {this.emit("data", data); }var stream = new MyStream();console.log(stream instanceof events.EventEmitter); // true console.log(MyStream.super_ === events.EventEmitter); // true stream.on("data", function(data) {console.log('Received data: "' + data + '"'); }) stream.write("It works!"); // Received data: "It works!"
转载于:https://www.cnblogs.com/liubei/p/nodejs_2.html
nodejs笔记--Events篇(二)相关推荐
- 2022黑马Redis跟学笔记.实战篇(二)
2022黑马Redis跟学笔记.实战篇 二 实战篇Redis 开篇导读 4.1短信登录 4.1.1. 搭建黑马点评项目 一.导入黑马点评项目 二.导入SQL 三.有关当前模型 四.导入后端项目 相关依 ...
- 谷粒商城-个人笔记(高级篇二)
目录 二.商城业务-首页 1.整合thymeleaf渲染首页 1).在"gulimall-product"项目中导入前端代码: 2).渲染一级分类数据&&整合dev ...
- PostCSS自学笔记(二)【番外篇二】
图解PostCSS的插件执行顺序 文章其实是一系列的早就写完了. 才发现忘了发在SegmentFault上面, 最早发布于https://gitee.com/janking/Inf... 这次我继续研 ...
- NodeJS笔记二---kalrry
NodeJS笔记二---kalrry NodeJS 服务器 什么是服务器 web服务端保存的资源: web服务器(软件)的作用: nodeJS 介绍 目标 优势 劣势 特点: 环境安装 版本 运行 w ...
- 《深入浅出WPF》笔记——事件篇
如果对事件一点都不了解或者是模棱两可的话,建议先去看张子阳的委托与事件的文章(比较长,或许看完了,也忘记看这一篇了,没事,我会原谅你的)http://www.cnblogs.com/JimmyZhan ...
- 《深入浅出WPF》笔记——绑定篇(一)
上一节,有记录写到:在WPF里,数据驱动UI,数据占核心地位,UI次之.怎么恢复数据的核心地位,那就要先了解一下Binding. 一.Binding 基础 1.1WPF中Data Binding的带来 ...
- 一篇文章带你熟悉 TCP/IP 协议(网络协议篇二)
涤生_Woo 2017年11月11日阅读 15544 关注 一篇文章带你熟悉 TCP/IP 协议(网络协议篇二) 同样的,本文篇幅也比较长,先来一张思维导图,带大家过一遍. 一图看完本文 一. 计算机 ...
- Kinect开发学习笔记之(二)Kinect开发学习资源整理
Kinect开发学习笔记之(二)Kinect开发学习资源整理 zouxy09@qq.com http://blog.csdn.net/zouxy09 刚刚接触Kinect,在网上狂搜资料,获得了很多有 ...
- 小猪猪C++笔记基础篇(四)数组、指针、vector、迭代器
小猪猪C++笔记基础篇(四) 关键词:数组,Vector. 一.数组与指针 数组相信大家学过C语言或者其他的语言都不陌生,简单的就是同一个变量类型的一组数据.例如:int a[10],意思就是从a开始 ...
最新文章
- 全文翻译(一):TVM: An Automated End-to-End Optimizing Compiler for Deep Learning
- 前端知识点回顾之重点篇——JavaScript异步机制
- python有道词典-利用Python3和Charles爬取有道词典
- 生成4位验证码(后台)
- 【51单片机快速入门指南】4.4.3:Madgwick AHRS 九轴姿态融合获取四元数、欧拉角
- 关于tag,viewWithTag
- 【转载】快速、可伸缩和流式的AJAX代理--跨域持续内容分发
- 真会省钱!苹果iPhone SE3首拆:电池、内存容量揭晓、基带属实缩水
- MangataのACM模板
- Node.js 下载安装教程
- vcpkg:If you are sure you want to rebuild the above packages, run the command with the --recurse opt
- 掉头发厉害,是为什么呢?
- 403 Forbidden nginx/1.6.2
- 工业大数据收集及预测建模方法(南京大学-宋哲博士分享)- 个人总结
- CMD命令行高级教程精选合编合集 转
- matlab植物叶面积,植物叶面积测量方法综述
- 蚂蚁金服mPaaS 3.0发布 助力客户智能化构建超级App生态
- 求求大佬救救孩子吧。按照书上敲的python爬取百度网盘权利的游戏案例,结果报错,其他都不报错,生成的txt文件也没有内容
- 研究生如何发表论文必读
- 规模化生物学:我们为何最终能跨过技术成熟度曲线?
热门文章
- hive hsql 漏斗模型_数据分析之SQL:常用模型
- jave导出mysql_java导出mysql数据到excel(poi)
- mysql join 条件_MySQL Join 竟然可以这么玩?根据条件 进行复制
- 橱柜高度与身高对照表_170身高和橱柜高度对照表 详细解析
- python的集合类型_python集合类型
- android 手机固定mac地址吗,Android手机获取Mac地址的几种方法
- es的doc_value对排序字段的作用
- bootlogo画面制作和替换
- VB:将短文件名格式转成长文件名
- 普惠AI,将是开发者下一个风口吗?看看他们怎么说