Friday, November 15, 2024

perbedaan const express = require('express'); dengan import { express } from 'express'

 


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 variabel express.
  • 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 modul express. Namun, ini akan gagal, karena express tidak memiliki ekspor named bernama express. Modul express 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();