۶ میلیون تومن هدیه🎁 + کلی آفر جذاب در کمپین تابستون🔥 تابستون کوتاهه پس بزن بریم 👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۰ همایون
نحوه کارکردن رویداد error
جامعه نود جی اس ایجاد شده در ۰۳ اردیبهشت ۱۴۰۱

سلام. در event error فرمودین متوقف شدن برنامه به خاطر اون خطایی هست که در موقع fire کردن event error بهش پاس میدیم ولی فکر نکنم درست باشه. چون هر event دیگه ای که تعریف نشده باشه و fire بشه و به عنوان ارگمان ورودی بهش خطا پاس بدیم باز هم خطا رخ نمیده و برنامه هم متوقف نمیشه چون throw نشده و فقط یه Object خطا از روی اون ساخته شده. دلیل اینکه در این قسمت برنامه متوقف شد fire کردن event error هست که از قبل تعریف شده و نیازی نیست ما تعریفش کنیم. و وقتی fire میشه خطایی که ایجاد میکنه برنامه رو متوقف میکنه ولی وقتی Handler این event رو بازنویسی کنیم با emitter اون موقع خطا fire نمیشه که برنامه متوقف بشه.

// script.js =>
const events = require("events");
const eventEmitter = new events.EventEmitter();
// Custom Error Event Handler
// eventEmitter.on("error", function () {}); // Commnet
// Fire the event
eventEmitter.emit("error");
// node script.js - Result => Error and Stop Node!
/////////////////////////////////////////////////////////////////
// script.js =>
const events = require("events");
const eventEmitter = new events.EventEmitter();
// Fire the event
eventEmitter.emit("test", new Error('test error message!')); // Event is not defined!
// node script.js - Result => no Error!
/////////////////////////////////////////////////////////////////

// script.js =>
const events = require("events");
const eventEmitter = new events.EventEmitter();
// Custom Error Event Handler
eventEmitter.on("error", function () {});
// Fire the event
eventEmitter.emit("error");
// node script.js - Result => no Error!