nodejs事件的監(jiān)聽與觸發(fā)的理解分析
本文實(shí)例分析了nodejs事件的監(jiān)聽與觸發(fā)。分享給大家供大家參考。具體分析如下:
關(guān)于nodejs的事件驅(qū)動(dòng),看了《nodejs深入淺出》還是沒看明白(可能寫的有點(diǎn)深,或者自己理解能力不夠好),今日在圖靈社區(qū)看到一篇關(guān)于nodejs事件的監(jiān)聽與觸發(fā),由于給出的例子比較多人,很容易理解,所以也大致明白了nodejs事件驅(qū)動(dòng)。
以下內(nèi)容參考了圖靈社區(qū)的文章(地址:http://www.ituring.com.cn/article/177478)
首先來了解一下nodejs的Event模塊:
Node.js中大部分的模塊,都繼承自Event模塊。Event模塊(events.EventEmitter)是一個(gè)簡(jiǎn)單的事件監(jiān)聽器模式的實(shí)現(xiàn)類。它的對(duì)象具有addListener,on,once,removeListener,removeAllListeners,emit等基本的事件監(jiān)聽模式的方法實(shí)現(xiàn)。
首先看一個(gè)例子:
var events = require("events");
var emitter = new events.EventEmitter();//創(chuàng)建了事件監(jiān)聽器的一個(gè)對(duì)象
// 監(jiān)聽事件some_event
emitter.on("some_event", function(){
console.log("事件觸發(fā),調(diào)用此回調(diào)函數(shù)");
});
setTimeout(function(){
emitter.emit("some_event"); //觸發(fā)事件some_event
},3000);
看到這個(gè)例子,就讓我想起了jQuery的自定義事件:
//給element綁定hello事件
element.on("hello",function(){
alert("hello world!");
});
//觸發(fā)hello事件
element.trigger("hello");
這樣一對(duì)比就很容易理解nodejs的事件的監(jiān)聽與觸發(fā)了。emit 就相當(dāng)于 jQuery 中的 trigger 觸發(fā)事件。
希望本文所述對(duì)大家的nodejs程序設(shè)計(jì)有所幫助。
相關(guān)文章
node.js連接mongoDB數(shù)據(jù)庫 快速搭建自己的web服務(wù)
這篇文章主要為大家詳細(xì)介紹了node.js連接mongoDB數(shù)據(jù)庫,如何快速搭建自己的web服務(wù),感興趣的小伙伴們可以參考一下2016-04-04
Node.js和MongoDB實(shí)現(xiàn)簡(jiǎn)單日志分析系統(tǒng)
這篇文章主要介紹了Node.js和MongoDB實(shí)現(xiàn)簡(jiǎn)單日志分析系統(tǒng),本文給出了服務(wù)器端、客戶端、圖表生成、Shell自動(dòng)執(zhí)行等功能的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-04-04
node.js實(shí)現(xiàn)身份認(rèn)證的示例代碼
本文主要介紹了 node.js實(shí)現(xiàn)身份認(rèn)證的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04
20行代碼簡(jiǎn)單實(shí)現(xiàn)koa洋蔥圈模型示例詳解
這篇文章主要為大家介紹了20行代碼簡(jiǎn)單實(shí)現(xiàn)koa洋蔥圈模型示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
在Debian(Raspberry Pi)樹莓派上安裝NodeJS的教程詳解
在樹莓派上運(yùn)行NodeJS并不需要特別的配置,你只需要確??梢杂胦penssh遠(yuǎn)程連接到你的樹莓派就ok了,關(guān)于在Debian(Raspberry Pi)樹莓派上安裝NodeJS的方法,大家可以通過本文了解下2017-09-09
搭建基于express框架運(yùn)行環(huán)境的方法步驟
Express提供了一個(gè)輕量級(jí)模塊,把Node.js的http模塊功能封裝在一個(gè)簡(jiǎn)單易用的接口中,這篇文章主要介紹了搭建基于express框架運(yùn)行環(huán)境的方法步驟,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
node.js正則表達(dá)式獲取網(wǎng)頁中所有鏈接的代碼實(shí)例
這篇文章主要介紹了node.js正則表達(dá)式獲取網(wǎng)頁中所有鏈接的代碼實(shí)例,使用正則表達(dá)式實(shí)現(xiàn),需要的朋友可以參考下2014-06-06

