Persamaan CommonJS dan ESM

Fri Aug 20 2021 21:37:52 GMT+0000 (Coordinated Universal Time)

JavaScript sebenarnya nggak memiliki sistem modularisasi sehingga aslinya nggak bisa export import. Makanya, untuk Node JS generasi awal dulu, menggunakan library Common JS yang sudah built in, untuk export importnya. Kalau sekarang sih sudah pakai ESM rata-rata. Dan memang direkomendasikan pakai ESM karena fitur-fitur Node JS selanjutnya akan diutamakan yang menggunakan ESM.

Common JS dan ESM

Kalau CommonJS kan kayak gini:

const hello = require("hello")

Sedangkan kalau ESM kayak gini:

import hello from "hello"

Lalu, apa persamaannya dan mana yang sebaiknya kita pilih?

Default import

CommonJS:

const hello = require("hello")

ESM:

import hello from "hello"

Named import

CommonJS:

const {data} = require("data")

ESM:

import {data} from "data"

Named import with alias

CommonJS:

const {data: updatedList} = require("data")

ESM:

import {data as updatedList} from "data"

Default export

CommonJS:

function hello(){
 console.log("Hello world")
}

module.exports = hello

ESM:

function hello(){
 console.log("Hello world")
}

export default hello

Named export

CommonJS:

function hello(){
 console.log("Hello world")
}

module.exports = {hello}

ESM:

export function hello(){
 console.log("Hello world")
}

Buat yang mau donasi untuk kelangsungan komunitas Echlus, silahkan transfer ke halaman donasi kami.