Perbedaan antara const express = require('express');
dan import { express } from 'express';
terletak pada cara JavaScript menangani modul berdasarkan standar yang digunakan:
1. const express = require('express');
- Sintaks: CommonJS Modules.
- Asal: Standar modul lama yang digunakan di Node.js.
- Fungsi: Memuat seluruh modul yang diekspor oleh library
express
dan menugaskannya ke variabelexpress
. - Contoh:
const express = require('express');
const app = express();
Kapan Digunakan:
- Ketika menjalankan kode di Node.js dengan konfigurasi default.
- Untuk proyek yang tidak mengaktifkan dukungan ECMAScript Modules (ESM).
2. import { express } from 'express';
- Sintaks: ES Modules (ESM).
- Asal: Standar modul modern yang diperkenalkan dalam ECMAScript 2015 (ES6).
- Fungsi: Mencoba mengimpor ekspor named
{ express }
dari modulexpress
. Namun, ini akan gagal, karenaexpress
tidak memiliki ekspor named bernamaexpress
. Modulexpress
hanya mengekspor default. - Contoh yang Salah:
import { express } from 'express'; // Akan memunculkan error!
Contoh yang Benar:
Jika menggunakan ESM, Anda harus menggunakan default import:
import express from 'express';
const app = express();