位置: 编程技术 - 正文

node.js学习之事件模块Events的使用示例(node.js实战)

编辑:rootadmin

推荐整理分享node.js学习之事件模块Events的使用示例(node.js实战),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js入门教程,node.js实战,node.js快速入门,node.js教程详细,nodejs实战教程,node.js快速入门,node.js入门教程,node-js,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

本文主要给大家介绍了关于node.js事件模块Events使用的一些示例,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

环境:Node v8.2.1; Npm v5.3.0; OS Windows

1、 Node事件介绍

Node大多数核心 API 都采用惯用的异步事件驱动架构,其中某些类型的对象(触发器)会周期性地触发命名事件来调用函数对象(监听器)。

所有能触发事件的对象都是 EventEmitter 类的实例。 这些对象开放了一个 eventEmitter.on() 函数,允许将一个或多个函数绑定到会被对象触发的命名事件上。 事件名称通常是驼峰式的字符串,但也可以使用任何有效的 JavaScript 属性名。

当 EventEmitter 对象触发一个事件时,所有绑定在该事件上的函数都被同步地调用。 监听器的返回值会被丢弃。

2、events 模块API介绍

3、 一些例子

下面是一些简单的例子,对应上面的API的一个代码实现

3.1 绑定和触发事件

3.2 为事件传递参数

3.3 this 的问题

node.js学习之事件模块Events的使用示例(node.js实战)

当一个普通的监听器函数被 EventEmitter 调用时,标准的 this 关键词会被设置指向监听器所附加的 EventEmitter。

也可以使用 ES6 的箭头函数作为监听器。但是这样 this 关键词就不再指向 EventEmitter 实例:

3.4 异步执行

EventListener 会按照监听器注册的顺序同步地调用所有监听器,监听器函数可以使用 setImmediate() 或 process.nextTick() 方法切换到异步操作模式:

3.5 无限次触发和一次触发

事件默认是可以无限次数的触发的,只要触发一次,对应的监听函数就执行一次;有时候我们希望只执行一次监听函数,可以使用【once】对事件进行绑定

多次触发:

一次触发:

3.6 错误事件

当 EventEmitter 实例中发生错误时,会触发一个 ‘error' 事件,如果 EventEmitter 没有为 ‘error' 事件注册至少一个监听器,则当 ‘error' 事件触发时,会抛出错误、打印堆栈跟踪、且退出 Node.js 进程。

为了防止 Node.js 进程崩溃,可以在 process 对象的 uncaughtException 事件上注册监听器

上面这样的方式并不是最佳实践,最好是为【error】注册监听函数

3.7 获取和修改最大事件监听数量

Node默认一个事件的监听数量为个,超过十个将会发出警告

改变指定的 EventEmitter 实例的监听器限制

3.8 newListener事件

EventEmitter 实例会在一个监听器被添加到其内部监听器数组【之前】触发自身的 ‘newListener' 事件

总结

标签: node.js实战

本文链接地址:https://www.jiuchutong.com/biancheng/379536.html 转载请保留说明!

上一篇:详解Node全局变量global模块(node的全局变量有哪些)

下一篇:node.js学习之断言assert的使用示例(node断点调试)

  • 二手房交易需要购房发票吗
  • 外贸 代理
  • 以旧换新销售货物时,一律按照新货物的价格缴纳增值税
  • 政府补贴的账务属于哪个科目
  • 暂估成本没有发票
  • 小规模纳税人的起征点是多少
  • 小规模纳税人未开票收入填在哪里
  • 怎么看自己公司是一般纳税人还是小规模纳税人
  • 怎么查自己是否
  • 税收分类编码不可用是什么原因
  • 房地产项目结转条件
  • 零售行业会计核算方法
  • 挂失申请怎么写
  • 结构性存款质押 叫停
  • 农产品收购发票可以跨区域开吗
  • 企业助学捐款分录怎么写
  • 收就业局稳岗补贴做账
  • 内控制度包括哪些制度
  • 工资薪金支出税收金额怎么算
  • 超过离线开票限定时长09d11f怎么解决
  • 不是房屋产权人可以卖房吗
  • 营业额500万以上税率
  • 贷款损失准备如何提取
  • 个人挂靠公司按揭购车账务怎么处理?
  • 建筑公司收到预收款要交税吗?
  • 电脑图标怎么在下面显示
  • 银行汇票与银行本票的区别
  • 促销费影响主营利润吗
  • 腾讯电脑管家浏览器保护在哪
  • 收到发票如何写摘要
  • 西部大开发的主要政策措施是什么?
  • 待抵扣进项税在贷方什么意思
  • framework教程
  • php高并发api接口怎么处理
  • 你别找了
  • 购进原材料款项未付应编制什么凭证
  • 应交增值税缴纳后入什么费用
  • 接待客人发生的事故
  • 材料采购成本计算表
  • 资本成本在财务报表中怎么体现
  • 修理费账务处理
  • sql server使用sql语句
  • mysql数据类型和索引
  • 火车票报销抵扣比例是多少
  • 增值税直接计算法间接计算法举例
  • 收到普票和专票对企业的纳税影响
  • 律师跨省办案
  • 什么单位需要
  • 出差补助没票怎么做账
  • 公司的房租发票怎么开
  • 缴纳上月附加税怎么做分录
  • 怎么辨别定额发票是什么项目啊
  • 企业对财会人员的要求
  • 有销项税额转出吗
  • 明细分类账怎么打印
  • mysql必知必会在线阅读
  • sqlserver分页查询
  • 通过分析SQL语句的执行计划优化SQL
  • ubuntu支持软件
  • linux中chkconfig命令的作用
  • 做好一个服务器工作
  • 电脑如何进入bios选择u盘启动
  • 删除 ubuntu
  • u盘安装win7系统教程图解
  • centos7查看性能监控
  • linux系统bug
  • 一个项目引多个项目
  • JavaScript的21条基本知识点
  • 添加ie
  • python3安装pygame
  • vue自定义过滤器的语法
  • ecmascript6 官方文档
  • node.js mysql
  • 核准类结算账户包括
  • 天河地税局局长简介
  • 冲减多计提的坏账准备
  • 软件和集成电路企业税收优惠
  • 电子税务局开电子发票如何更换开票人
  • 中税网讲师
  • 预缴税款怎么做账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设