Minhajul Anwar's Blog

2025, Sep 05    

TLDR; package.json ফাইলে "type": "module" দিলে প্রজেক্টের .js ফাইলগুলোকে ডিফল্টভাবে ECMAScript Module (ESM) হিসেবে ধরা হয়। কোডবেসকে করে আরও স্ট্যান্ডার্ড, ক্লিন আর মেইন্টেইনেবল।

🔹 Module Syntax

  • CommonJS (CJS)-এর require() এবং module.exports এর পরিবর্তে import এবং export — এটা আধুনিক স্ট্যান্ডার্ড।

🔹 File Extensions

  • .js ফাইলকেই সরাসরি ESM হিসেবে ব্যবহার করা যায়। .mjs, .cjs এসব এক্সটেনশান নিষ্প্রয়োজন।

🔹 Scoped Variables

  • (ESM) টপ-লেভেলে ডিফাইন করা ভ্যারিয়েবল শুধু সেই মডিউলের মধ্যে থাকে, গ্লোবাল হয় না।

🔹 __dirname এবং __filename

  • নেই। import.meta.url ব্যবহার করা যায়।

🔹 JSON Modules

  • সরাসরি ইম্পোর্ট।

    import data from './data.json';