Node.js est une plate-forme construite sur le runtime JavaScript Chrome.
Node.js est un environnement JavaScript c?té serveur d'E/S basé sur le moteur V8 de Google. Le moteur V8 exécute Javascript très rapidement et offre de très bonnes performances.
Boucle d'événements Node.js syntaxe
Node.js est une application à processus unique et à thread unique, mais en raison des interfaces de rappel d'exécution asynchrone fournies par le moteur V8, une grande quantité de concurrence peut être gérée via ces interfaces, les performances sont donc très élevées.
Presque toutes les API de Node.js prennent en charge les fonctions de rappel.
Node.js Fondamentalement, tous les mécanismes d'événements sont implémentés à l'aide du modèle d'observateur dans le modèle de conception.
Le thread unique Node.js est similaire à la saisie d'une boucle d'événement while (true) jusqu'à ce qu'aucun observateur d'événement ne se termine. Chaque événement asynchrone génère un observateur d'événement. Si un événement se produit, la fonction de rappel est appelée.
Boucle d'événements Node.js exemple
Créez le fichier main.js, le code est le suivant :
// 引入 events 模塊 var events = require('events'); // 創(chuàng)建 eventEmitter 對象 var eventEmitter = new events.EventEmitter(); // 創(chuàng)建事件處理程序 var connectHandler = function connected() { console.log('連接成功。'); // 觸發(fā) data_received 事件 eventEmitter.emit('data_received');} // 綁定 connection 事件處理程序 eventEmitter.on('connection', connectHandler); // 使用匿名函數(shù)綁定 data_received 事件 eventEmitter.on('data_received', function(){ console.log('數(shù)據(jù)接收成功。');}); // 觸發(fā) connection 事件 eventEmitter.emit('connection'); console.log("程序執(zhí)行完畢。");