萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> nodejs事件的監聽與觸發的理解分析

nodejs事件的監聽與觸發的理解分析

 這篇文章主要介紹了nodejs事件的監聽與觸發的理解分析,以實例形式對比分析了nodejs與jQuery關於事件監聽的實用技巧,有助於加深對nodejs的理解,需要的朋友可以參考下

   

本文實例分析了nodejs事件的監聽與觸發。分享給大家供大家參考。具體分析如下:

關於nodejs的事件驅動,看了《nodejs深入淺出》還是沒看明白(可能寫的有點深,或者自己理解能力不夠好),今日在圖靈社區看到一篇關於nodejs事件的監聽與觸發,由於給出的例子比較多人,很容易理解,所以也大致明白了nodejs事件驅動。

以下內容參考了圖靈社區的文章(地址:http://www.ituring.com.cn/article/177478)

首先來了解一下nodejs的Event模塊:

Node.js中大部分的模塊,都繼承自Event模塊。Event模塊(events.EventEmitter)是一個簡單的事件監聽器模式的實現類。它的對象具有addListener,on,once,removeListener,removeAllListeners,emit等基本的事件監聽模式的方法實現。

首先看一個例子:

? 1 2 3 4 5 6 7 8 9 var events = require("events"); var emitter = new events.EventEmitter();//創建了事件監聽器的一個對象 // 監聽事件some_event emitter.on("some_event", function(){ console.log("事件觸發,調用此回調函數"); }); setTimeout(function(){ emitter.emit("some_event"); //觸發事件some_event },3000);

看到這個例子,就讓我想起了jQuery的自定義事件:

? 1 2 3 4 5 6 //給element綁定hello事件 element.on("hello",function(){ alert("hello world!"); }); //觸發hello事件 element.trigger("hello");

這樣一對比就很容易理解nodejs的事件的監聽與觸發了。emit 就相當於 jQuery 中的 trigger 觸發事件。

希望本文所述對大家的nodejs程序設計有所幫助。

copyright © 萬盛學電腦網 all rights reserved