国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

從零開始學(xué)習(xí)Node.js系列教程六:EventEmitter發(fā)送和接收事件的方法示例

2019-11-19 16:50:05
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Node.js EventEmitter發(fā)送和接收事件的方法。分享給大家供大家參考,具體如下:

pulser.js

/* EventEmitter發(fā)送和接收事件 HTTPServer和HTTPClient類,它們都繼承自EventEmitter EventEmitter被定義在Node的事件(events)模塊中,直接使用EventEmitter類需要先聲明require('events'), 否則不必顯式聲明require('events'),因?yàn)镹ode中很多對(duì)象都無需你調(diào)用require('events')就會(huì)使用EventEmitter */var events = require('events');var util = require('util');function Pulser(){  events.EventEmitter.call(this);}util.inherits(Pulser, events.EventEmitter);Pulser.prototype.start = function(){  var self = this;  this.id = setInterval(function(){    util.log('>>>>pulse');    self.emit('pulse');    util.log('<<<<pulse');  }, 1000);}//定義了一個(gè)類Pulser,該類(通過util.inherits)繼承自EventEmitter,它的作用是每隔一秒鐘向所有監(jiān)聽器發(fā)送一個(gè)定時(shí)事件。//start方法使用了setInterval這個(gè)函數(shù)來定期重復(fù)執(zhí)行回調(diào)函數(shù),并調(diào)用emit方法將pulse事件發(fā)送給每一個(gè)監(jiān)聽器//使用Pulser對(duì)象/*創(chuàng)建了一個(gè)Pulser對(duì)象并處理其pulse事件,執(zhí)行pulser.on('pulse'..)為pulse事件和回調(diào)函數(shù)建立聯(lián)系 */var pulser = new Pulser();pulser.on('pulse', function(){  util.log('pulse received');});pulser.start();//對(duì)象使用emit函數(shù)發(fā)送事件,所有注冊(cè)到對(duì)應(yīng)事件的監(jiān)聽器都可以收到事件;//通過調(diào)用.on方法注冊(cè)監(jiān)聽器,參數(shù)是事件名,并用一個(gè)回調(diào)函數(shù)接收事件//通常來說,有一些數(shù)據(jù)需要伴隨著事件同時(shí)發(fā)送 self.emit('eventName', data1, data2, ..);//emitter.on('eventName', function(data1, data2,..){    //接收到事件后的操作// });

每秒輸出一次

希望本文所述對(duì)大家nodejs程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 通州区| 永寿县| 兴文县| 蒲江县| 福安市| 泽州县| 平罗县| 辽阳县| 都安| 梨树县| 甘肃省| 周至县| 华容县| 泸水县| 大新县| 盐城市| 芜湖县| 宜兰县| 临猗县| 永和县| 武城县| 桂东县| 丰台区| 夏邑县| 定边县| 绥德县| 灵台县| 昌图县| 宾阳县| 内丘县| 新疆| 准格尔旗| 广丰县| 克东县| 滦平县| 即墨市| 浏阳市| 格尔木市| 晋中市| 玉屏| 宁夏|