菜单
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Node.js Events


Node.js 非常适合事件驱动型应用程序。


Node.js 中的事件

计算机上的每个操作都是一个事件。比如连接建立时或文件打开时。

Node.js 中的对象可以触发事件,例如 readStream 对象在打开和关闭文件时会触发事件

示例

var fs = require('fs');
var rs = fs.createReadStream('./demofile.txt');
rs.on('open', function () {
  console.log('文件已打开');
});
运行示例 »

Events 模块

Node.js 有一个内置模块,称为“Events”,您可以在其中创建、触发和监听自己的事件。

要包含内置的 Events 模块,请使用 require() 方法。此外,所有事件属性和方法都是 EventEmitter 对象的实例。要访问这些属性和方法,请创建一个 EventEmitter 对象

var events = require('events');
var eventEmitter = new events.EventEmitter();

EventEmitter 对象

您可以使用 EventEmitter 对象为自己的事件分配事件处理程序。

在下面的示例中,我们创建了一个函数,当触发“scream”事件时将执行该函数。

要触发事件,请使用 emit() 方法。

示例

var events = require('events');
var eventEmitter = new events.EventEmitter();

//创建事件处理程序
var myEventHandler = function () {
  console.log('我听到了尖叫声!');
}

//为事件分配事件处理程序
eventEmitter.on('scream', myEventHandler);

//触发 'scream' 事件
eventEmitter.emit('scream');
运行示例 »

×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持