DEV Community

loading...

Guess the error message

samundrak profile image Danphe ・1 min read

Can you guess the correct error message this program will throw when executed, also do mention why?

class HookExecutor {
  constructor() {
    this.hooks = [];
  }

  async exec() {
    try {
      this.hooks.forEach((fn) => fn());
    } catch (Err) {
      console.log(
        "Error 3: caught inside exec function where all hooks are executed."
      );
    }
  }

  process() {
    this.exec().catch((error) => {
      console.log("Error 2: caught inside new HooksExecutor.process", error);
    });
  }
}

const hookExecutor = new HookExecutor();
try {
  hookExecutor.hooks.push(async () => {
    console.log("I am a hooks");
    throw new Error("Serious Error!");
  });
} catch (err) {
  console.log("Error 1: Caught in global space", err);
}

hookExecutor.process();
Enter fullscreen mode Exit fullscreen mode

Discussion (0)

pic
Editor guide