Nearby lessons

15 of 21

📦 Node.js – Module Scope & Module Wrapper Function

📌 What is Module Scope?

What is Module Scope?

In Node.js, each file is treated as a separate module with its own scope. This means that variables declared inside one module are not accessible in another module unless they are explicitly exported.

What is Module Wrapper Function?

Behind the scenes, Node.js does not run our code directly. Instead, it wraps the entire code inside a function before execution. This function is called the Module Wrapper Function. It ensures that variables declared inside a module are scoped to that module only.

⚠️ Case 1: Problem – Name Conflict

Example02
Loading editor…

✅ Case 2: Solution – Module Scope

Node.js automatically wraps each module's code inside a function. This provides module scope and prevents variable name conflicts across modules.

🔄 Case 3: Module Wrapper Function in Action

Example04
Loading editor…

📌 Complete Module Wrapper Syntax

(function (exports, require, module, __filename, __dirname) {
   // module code
});

⚡ Use of Module Wrapper Function

  • Variables declared with var, let, or const are scoped to the module (not global).
  • Provides global-looking variables like exports, module, __filename, and __dirname.
  • Helps in exporting values safely between modules.

🎯 Benefits

  • Prevents conflicts between variables across different modules.
  • Ensures proper encapsulation.
  • Encourages modularity and reusability.

🧠 Test Your Knowledge

4 Questions
Progress: 0 / 4