簡體   English   中英

此node.js中的'on'方法是代碼JavaScript方法還是節點方法?

[英]Is the 'on' method in this node.js code a JavaScript method or a node method?

我在Google上找不到這個答案,因為'on'是一個常見的詞。 在這個node.js示例中:

conn.on('close', function() {
var pos =   connections.indexOf(conn);
    if (pos >= 0) {
        connections.splice(pos, 1);
    }
});

有一個.on方法(?)。 它能做什么? 這是一種JavaScript方法嗎? 或者它只是你在節點中找到的東西? 我有點困惑,因為我覺得我在jQuery上看到了像.on這樣的東西。 它類似於jQuery .live事件處理程序嗎?

任何人都可以向我解釋這個嗎?

在這種情況下, on是節點方法。 jQuery也有一個相同名稱的方法,它們基本上用於相同的目的 - 通過字符串名稱將事件處理程序綁定到事件。 事實上,簽名看起來與我相同,IIRC。

純JavaScript沒有這樣的方法。

對於那些尋求簡單解釋的人來說,它是節點本機實現,它是addListener的別名(evtName,func)在這里檢查API

您可能知道,Node.js是偶數,因此監聽事件(pub-sub),就像jQuery或Backbone一樣。

在Node.js中,您通常綁定函數(使用'on'或其他函數)來監聽事件。

從Node.js 文檔

例如,每次對等體連接到它時,net.Server都會發出一個事件,fs.readStream會在打開文件時發出一個事件。 發出事件的所有對象都是events.EventEmitter的實例。 您可以通過執行以下操作來訪問此模塊:require(“events”);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM