
- Node.js 教程
- Node.js - 首頁
- Node.js - 簡介
- Node.js - 環境搭建
- Node.js - 第一個應用
- Node.js - REPL 終端
- Node.js - 命令列選項
- Node.js - 包管理器 (NPM)
- Node.js - 回撥函式概念
- Node.js - 上傳檔案
- Node.js - 傳送郵件
- Node.js - 事件
- Node.js - 事件迴圈
- Node.js - 事件發射器
- Node.js - 偵錯程式
- Node.js - 全域性物件
- Node.js - 控制檯
- Node.js - 程序
- Node.js - 應用程式擴充套件
- Node.js - 打包
- Node.js - Express 框架
- Node.js - RESTful API
- Node.js - 緩衝區
- Node.js - 流
- Node.js - 檔案系統
- Node.js MySQL
- Node.js - MySQL 入門
- Node.js - MySQL 建立資料庫
- Node.js - MySQL 建立表
- Node.js - MySQL 插入資料
- Node.js - MySQL 查詢資料
- Node.js - MySQL 條件查詢
- Node.js - MySQL 排序
- Node.js - MySQL 刪除資料
- Node.js - MySQL 更新資料
- Node.js - MySQL 連線查詢
- Node.js MongoDB
- Node.js - MongoDB 入門
- Node.js - MongoDB 建立資料庫
- Node.js - MongoDB 建立集合
- Node.js - MongoDB 插入資料
- Node.js - MongoDB 查詢資料
- Node.js - MongoDB 查詢
- Node.js - MongoDB 排序
- Node.js - MongoDB 刪除資料
- Node.js - MongoDB 更新資料
- Node.js - MongoDB 限制結果
- Node.js - MongoDB 連線查詢
- Node.js 模組
- Node.js - 模組
- Node.js - 內建模組
- Node.js - 實用程式模組
- Node.js - Web 模組
- Node.js 有用資源
- Node.js - 快速指南
- Node.js - 有用資源
- Node.js - 討論
NodeJS - emitter.emit() 方法
emitter.emit() 方法會同步呼叫註冊到名為 eventName 的事件的所有監聽器,並按註冊順序依次呼叫,同時將引數傳遞給每個監聽器函式。
此方法屬於 Eventemitter 類,它是 node:events 模組的內建類。
語法
以下是 NodeJs emitter.emit() 方法的語法:
emitter.emit(eventName[, …args])
引數
此方法接受以下兩個引數:
- eventName:這是方法的第一個引數,它儲存事件的名稱。它可以是字串或符號。
- args:(可選) 此引數儲存一組可以傳遞給監聽器函式的引數。
返回值
(布林值) 如果事件有監聽器,則此方法返回 true;如果事件沒有監聽器,則返回 false。
示例 1
以下是 NodeJs emitter.emit() 方法的基本示例。
在這裡,我們將 args 傳遞給了 myEmitter.emit() 方法。args 將傳遞給監聽器函式,然後列印完整的訊息。
const EventEmitter = require('node:events'); const myEmitter = new EventEmitter(); function f1(arg1, arg2){ console.log(`${arg1} to ${arg2}`); } myEmitter.on('myEvent', f1); myEmitter.emit("myEvent", 'Welcome', 'Tutorialspoint', 'Bye');
輸出
以上程式產生以下輸出:
Welcome to Tutorialspoint
示例 2
首先,我們建立了一個包含訊息的函式 func1。然後,我們呼叫了 emitter.addListener() 方法,將 eventName 作為第一個引數傳遞,並將 (func1) 傳遞給方法的 listener 引數,透過呼叫 myEmitter.emit() 方法並傳入 eventName。由於我們在這裡沒有傳遞任何 args。由於 eventName 有一個監聽器,因此 myEmitter.emit() 方法將返回監聽器函式。
const EventEmitter = require('node:events'); const myEmitter = new EventEmitter(); function f1() { console.log("Heya!, i'm function1"); } myEmitter.addListener("myEvent", f1) myEmitter.emit("myEvent");
輸出
以上程式產生以下輸出:
Heya!, i'm function1
示例 3
在這個程式中,我們使用了擴充套件運算子 (…) 來提取我們傳遞的每個 args。因此,所有 args 都將被提取並傳遞給監聽器函式。
const EventEmitter = require('node:events'); const myEmitter = new EventEmitter(); function f1(...args){ const teams = args.join(', '); console.log(`Some International cricket teams are ${teams}.`); } myEmitter.on('myEvent', f1); myEmitter.emit("myEvent", 'India', 'Pakistan', 'Australia', 'England');
輸出
以上程式產生以下輸出:
Some International cricket teams are India, Pakistan, Australia, England.
nodejs_events.htm
廣告