Selama bertahun-tahun, JavaScript hanya hidup di dalam tab browser. Di sana ia menghidupkan halaman, misalnya memvalidasi formulir atau memperbarui isi keranjang belanja tanpa memuat ulang halaman. Namun, browser sengaja mengurung JavaScript demi keamanan. Kode di sebuah halaman tidak boleh membaca berkas di komputer Anda, tidak boleh membuka port jaringan, dan berhenti begitu tab ditutup.
Batasan itu membuat satu website dulu hampir selalu membutuhkan dua bahasa: JavaScript untuk tampilan, lalu PHP, Java, atau Python untuk server. Node JS adalah jawaban atas pemisahan itu. Ia adalah runtime (lingkungan tempat program dijalankan) yang membawa JavaScript keluar dari browser, sehingga bisa dipakai untuk membangun server, API, hingga perkakas pengembangan. Survei Stack Overflow 2025 mencatat 48,7% responden memakai Node.js, tertinggi di kategori teknologi web.
Artikel ini membahas pengertian Node.js, cara kerjanya lewat tiga eksperimen kecil, sampai versi yang sebaiknya dipakai per Oktober 2026.
Node JS Adalah Runtime, Bukan Bahasa Baru atau Framework
Secara sederhana, Node.js adalah program yang membaca berkas JavaScript lalu mengeksekusinya langsung di sistem operasi, tanpa membutuhkan browser. Dokumentasi resminya menyebut Node.js sebagai lingkungan runtime JavaScript yang open source dan lintas platform, sehingga bisa berjalan di Windows, macOS, maupun Linux. Bahasa yang Anda tulis tetap JavaScript yang sama. Yang berubah adalah tempat kode itu berjalan dan kemampuan yang tersedia untuknya.
Pertanyaan yang sering muncul adalah apakah Node.js termasuk framework. Anggapan bahwa Node.js adalah framework memang wajar, karena namanya hampir selalu disebut bersama Express atau NestJS. Padahal ketiganya berada di lapisan yang berbeda:
| Lapisan | Contoh | Perannya |
|---|---|---|
| Bahasa pemrograman | JavaScript, TypeScript | Aturan menulis kode |
| Runtime | Node.js, Deno, Bun | Menjalankan kode di luar browser |
| Framework | Express, NestJS, Next.js | Kerangka siap pakai di atas runtime |
Jadi, Node.js bukan bahasa pemrograman baru dan bukan framework. Framework Node.js seperti Express dan NestJS justru membutuhkan Node.js sebagai tempat berjalan, sama seperti aplikasi Android membutuhkan sistem operasi Android.
Node.js diperkenalkan Ryan Dahl pada 2009 di konferensi JSConf EU. Awal 2010 lahir npm, pengelola paket yang kini terpasang otomatis bersama Node.js. Sejak 2019 proyek ini bernaung di bawah OpenJS Foundation, sehingga tidak bergantung pada satu perusahaan.
Kata "node" sendiri punya arti lain di dunia jaringan dan struktur data, yaitu titik yang saling terhubung. Kalau makna itu yang Anda cari, pembahasannya ada di artikel node adalah.
Arsitektur Node.js: V8, libuv, dan Pustaka Bawaan
Node.js adalah rangkaian tiga komponen dengan tugas masing-masing. Memahami ketiganya membuat perilaku Node.js jauh lebih mudah ditebak.
- V8, penerjemah JavaScript: V8 adalah engine JavaScript buatan Google yang juga menggerakkan Google Chrome. Ia menerjemahkan kode JavaScript menjadi instruksi mesin saat program berjalan (just-in-time compilation), sehingga eksekusinya cepat. Jadi, engine yang digunakan oleh Node.js adalah V8. Node.js 26 membawa V8 versi 14.6.
- libuv, pengatur antrean pekerjaan: libuv adalah pustaka berbahasa C yang mengimplementasikan event loop dan seluruh operasi asinkron Node.js. Ia juga menyediakan thread pool, sekumpulan pekerja cadangan untuk tugas yang tidak bisa diserahkan langsung ke sistem operasi.
- Pustaka bawaan, alat yang langsung bisa dipakai: modul seperti
node:httpuntuk membuat server,node:fsuntuk membaca dan menulis berkas, dannode:cryptountuk enkripsi. Modul inilah yang memberi JavaScript kemampuan yang tidak pernah ia miliki di browser.
Saat Anda menjalankan sebuah berkas dengan Node.js, ketiganya bekerja berurutan. V8 membaca dan mengeksekusi kode Anda, pustaka bawaan menyediakan fungsi seperti membuat server, dan libuv memastikan operasi yang lambat tidak menahan kode lain.

Cara Kerja Node.js: Satu Thread yang Tidak Pernah Menunggu
Node.js menjalankan kode JavaScript dengan satu thread utama yang tidak pernah menunggu operasi lambat selesai. Untuk membayangkannya, ambil contoh sebuah laundry kiloan dengan satu petugas di meja depan. Saat pelanggan datang, petugas menimbang cucian, memasukkannya ke mesin, lalu langsung melayani pelanggan berikutnya. Ia tidak berdiri menunggu di depan mesin selama 40 menit. Ketika mesin selesai dan bel berbunyi, petugas menuntaskan cucian itu di sela-sela melayani pelanggan lain.
Begitulah cara kerja Node.js. Kode JavaScript Anda dijalankan oleh satu thread (jalur eksekusi) utama yang disebut event loop. Saat kode meminta sesuatu yang lambat, misalnya membaca berkas atau memanggil database, Node.js menitipkan pekerjaan itu ke sistem operasi atau thread pool. Thread utama lalu lanjut ke tugas berikutnya. Begitu pekerjaan selesai, fungsi lanjutannya (callback) masuk antrean dan dijalankan pada putaran event loop berikutnya.
Pola inilah yang disebut karakteristik API Node.js. API-nya bersifat asinkron (tidak menunggu hasil), event-driven (bereaksi terhadap kejadian seperti "permintaan masuk"), dan non-blocking (operasi I/O tidak menahan thread utama). Menurut dokumentasi resminya, model ini memungkinkan satu server menangani ribuan koneksi bersamaan tanpa membuat thread baru untuk setiap permintaan.

Setiap putaran event loop melewati enam fase berurutan, antara lain timers (menjalankan setTimeout), poll (mengambil hasil I/O), dan check (menjalankan setImmediate). Anda tidak perlu menghafalnya untuk mulai menulis kode.
Eksperimen #1: Urutan Output yang Melompat
Simpan kode berikut sebagai urutan.js. Kode ini membaca isi berkasnya sendiri, lalu mencetak tiga baris bernomor:
const fs = require('node:fs');
console.log('1. Mulai membaca berkas');
fs.readFile(__filename, 'utf8', (err, isi) => {
console.log('3. Selesai: ' + isi.length);
});
console.log('2. Baris ini jalan duluan');Jalankan dengan node urutan.js. Hasilnya:
1. Mulai membaca berkas
2. Baris ini jalan duluan
3. Selesai: 210Baris kedua tercetak sebelum baris ketiga, padahal ditulis sesudahnya. fs.readFile() hanya menitipkan pembacaan berkas lalu langsung kembali, sehingga console.log berikutnya sempat berjalan lebih dulu. Inilah wujud non-blocking yang paling sederhana.
Eksperimen #2: Thread Pool Hanya Punya Empat Pekerja
Tidak semua pekerjaan bisa diserahkan ke sistem operasi. Operasi berkas, kompresi zlib, dns.lookup(), dan sebagian fungsi crypto dikerjakan oleh thread pool milik libuv, yang secara bawaan hanya berisi 4 thread. Kode berikut menjalankan enam proses hashing kata sandi sekaligus:
const crypto = require('node:crypto');
const mulai = Date.now();
for (let i = 1; i <= 6; i++) {
crypto.pbkdf2('sandi', 'garam', 300000,
64, 'sha512', () => {
const ms = Date.now() - mulai;
console.log(`Hash #${i}: ${ms} ms`);
});
}Pada pengujian kami (Node.js 26.3, prosesor 10 inti), hasilnya terbagi menjadi dua gelombang:
Hash #1: 57 ms
Hash #2: 60 ms
Hash #3: 61 ms
Hash #4: 62 ms
Hash #5: 112 ms
Hash #6: 117 msEmpat hash selesai hampir bersamaan, sedangkan dua sisanya harus menunggu ada pekerja yang kosong, sehingga waktunya hampir dua kali lipat. Padahal prosesornya punya 10 inti, jadi yang membatasi adalah jumlah pekerja, bukan tenaga CPU. Ukuran pool bisa dinaikkan lewat variabel lingkungan UV_THREADPOOL_SIZE (maksimal 1024). Dengan UV_THREADPOOL_SIZE=6, keenam hash pada pengujian yang sama selesai dalam 70–78 ms.
Angka persisnya akan berbeda di komputer Anda. Pola dua gelombangnya tetap akan terlihat selama jumlah tugas melebihi jumlah pekerja.
Node.js dan JavaScript di Browser: Apa Bedanya?
Bahasanya sama, tetapi lingkungannya berbeda jauh. Inilah sebabnya kode yang lancar di browser bisa gagal di Node.js, atau sebaliknya.
| Aspek | Browser | Node.js |
|---|---|---|
Objek window dan document | Ada | Tidak ada |
| Akses berkas lokal | Dilarang | Bisa lewat node:fs |
| Membuka port | Tidak bisa | Bisa lewat node:http |
| Sistem modul | import | require dan import |
| Versi mesin | Ditentukan pengunjung | Ditentukan Anda |
Cara tercepat membuktikannya adalah menjalankan dua perintah berikut di terminal:
node -p "typeof window"
node -p "typeof process"Hasilnya undefined dan object. Objek window milik browser tidak ada, sedangkan process, yang berisi informasi proses dan variabel lingkungan, hanya tersedia di Node.js. Sebaliknya, beberapa API web seperti fetch kini tersedia di keduanya.
Baris terakhir tabel sering terlupakan. Di browser, Anda tidak tahu pengunjung memakai Chrome versi berapa, sehingga kode modern kadang harus diterjemahkan ke sintaks lama. Di server, Anda sendiri yang memilih versinya.
Fungsi dan Kegunaan Node.js
Lalu, Node.js untuk apa saja? Karena unggul menangani banyak koneksi yang sebagian besar waktunya dihabiskan untuk menunggu, Node.js paling sering dipakai untuk enam jenis pekerjaan berikut.
- Membangun backend dan API: menerima permintaan dari aplikasi web atau seluler, mengambil data dari database seperti MySQL atau MongoDB, lalu mengirim balasan dalam format JSON. Inilah kegunaan yang paling umum, biasanya dalam bentuk REST API.
- Aplikasi real-time: chat, notifikasi langsung, papan skor, atau dasbor pemantauan yang membutuhkan koneksi terbuka terus-menerus lewat WebSocket.
- Perkakas pengembangan frontend: alat build seperti Vite, linter, dan formatter berjalan di atas Node.js. Karena itu, developer frontend yang tidak pernah menulis kode server pun tetap memasangnya.
- Server-side rendering: framework seperti Next.js menyusun halaman React di server sebelum dikirim ke browser. Hasilnya, halaman lebih cepat tampil dan lebih mudah dibaca mesin pencari.
- Aplikasi baris perintah (CLI): skrip otomasi dan perkakas terminal yang dibagikan lewat npm.
- Aplikasi desktop: Electron menggabungkan Node.js dengan Chromium, sehingga aplikasi desktop bisa dibangun dengan HTML, CSS, dan JavaScript. Visual Studio Code adalah contoh yang paling dikenal.
Untuk melihat fungsi Node.js yang paling dasar, berikut server web lengkap tanpa pustaka tambahan:
const http = require('node:http');
const server = http.createServer((req, res) => {
res.end('Halo dari Node.js\n');
});
server.listen(3000, () => {
console.log('Buka http://localhost:3000');
});Simpan sebagai server.js, jalankan dengan node server.js, lalu buka alamat localhost tersebut di browser. Halaman akan menampilkan teks Halo dari Node.js. Pada pengujian kami, server ini hanya memakai memori sekitar 16 MB dan tidak membutuhkan Apache atau Nginx untuk berjalan.

Kelebihan Node.js
Dari cara kerja di atas, kelebihan Node.js bisa dirangkum menjadi empat hal berikut.
- Satu bahasa untuk dua sisi aplikasi: tim cukup menguasai JavaScript untuk tampilan maupun server, dan potongan kode seperti validasi formulir bisa dipakai bersama. Pembagian kerja frontend dan backend pun lebih mudah dikoordinasikan.
- Efisien untuk pekerjaan yang banyak menunggu: karena tidak membuat thread untuk setiap permintaan, kebutuhan memori per koneksi kecil. Ini cocok untuk API, chat, dan layanan yang sebagian besar waktunya menunggu database atau jaringan.
- Ekosistem paket yang sangat luas: registry npm menampung jutaan paket, mulai dari koneksi database sampai pemroses gambar. Jarang ada kebutuhan yang harus ditulis dari nol.
- TypeScript langsung jalan: sejak versi 22.18 dan 23.6, Node.js bisa mengeksekusi berkas
.tssecara langsung, dan fitur ini stabil sejak versi 24.12. Namun, Node.js hanya membuang anotasi tipe tanpa memeriksanya. Pemeriksaan tetap tugas TypeScript di editor atau saat build.
Kekurangan Node.js yang Perlu Anda Pertimbangkan
Model satu thread adalah kekuatan Node.js sekaligus titik lemahnya. Selama pekerjaan setiap permintaan ringan, semuanya lancar. Begitu ada satu pekerjaan yang menghabiskan CPU, seluruh server ikut tertahan.
Eksperimen #3: Satu Hitungan Berat Menahan Semuanya
Kode berikut memasang timer 100 ms, lalu menjalankan perulangan yang menyibukkan CPU selama 2 detik:
const mulai = Date.now();
setTimeout(() => {
const ms = Date.now() - mulai;
console.log(`Timer 100 ms jalan di ${ms} ms`);
}, 100);
// simulasi hitungan berat selama 2 detik
const akhir = Date.now() + 2000;
while (Date.now() < akhir) {}
console.log('Hitungan berat selesai');Hasilnya:
Hitungan berat selesai
Timer 100 ms jalan di 2003 msTimer yang seharusnya berjalan setelah 100 ms baru dieksekusi pada detik ke-2. Di server sungguhan, artinya setiap pengunjung lain ikut menunggu 2 detik, termasuk yang hanya meminta halaman ringan. Kasus serupa bisa dipicu parsing JSON berukuran puluhan megabita, yang menurut dokumentasi Node.js memakan sekitar 1,3 detik untuk 50 MB. Pemicu lain adalah regular expression yang dirancang buruk, celah yang dikenal sebagai ReDoS (Regular expression Denial of Service).

Selain itu, ada empat hal lain yang perlu Anda timbang sebelum memilih Node.js:
- Kurang cocok untuk komputasi berat: pengolahan video atau pelatihan model machine learning lebih tepat ditangani Go, Rust, atau Python dengan pustaka berbasis C. Modul
worker_threadsbisa memindahkan hitungan ke thread lain, tetapi menambah kerumitan. - Pohon dependensi yang dalam: satu paket npm bisa menarik puluhan paket lain. Folder
node_modulesmudah membengkak hingga ratusan megabita, dan setiap paket adalah kode orang lain yang ikut berjalan di server Anda. - Kode asinkron menuntut disiplin: lupa menulis
awaitatau tidak menangani error pada Promise bisa membuat aplikasi berhenti tanpa pesan yang jelas. - Proses harus dijaga tetap hidup: berbeda dengan PHP yang dijalankan ulang untuk setiap permintaan, aplikasi Node.js adalah satu proses yang berjalan terus. Jika proses itu mati karena error, website ikut mati sampai dinyalakan kembali, dan pengunjung di balik Nginx akan melihat 502 Bad Gateway.
Sebagai patokan, hitung berapa lama waktu CPU murni yang dihabiskan satu permintaan, di luar waktu menunggu database. Satu thread yang menghabiskan 50 ms CPU per permintaan hanya sanggup melayani 20 permintaan per detik, berapa pun besar servernya. Jika angka Anda mendekati itu, pindahkan hitungannya ke worker thread, antrean pekerjaan terpisah, atau layanan dalam bahasa lain.
Node.js vs PHP, Deno, dan Bun
Node.js bukan satu-satunya cara menjalankan kode di server. Tabel berikut menempatkannya di antara pilihan yang paling sering dipertimbangkan.
| Aspek | Node.js | PHP | Deno | Bun |
|---|---|---|---|---|
| Bahasa | JS, TS | PHP | JS, TS | JS, TS |
| Mesin | V8 | Zend | V8 | JavaScriptCore |
| Eksekusi | Proses tetap | Per permintaan | Proses tetap | Proses tetap |
| Paket npm | Bawaan | Composer | Ya, sejak 2.0 | Ya |
| Shared hosting | Terbatas | Sangat luas | Jarang | Jarang |
Untuk pertanyaan Node.js vs PHP, jawabannya ditentukan pola beban aplikasi, bukan mana yang lebih modern. PHP unggul untuk website konten seperti WordPress karena hampir semua hosting mendukungnya dan setiap permintaan berdiri sendiri, sehingga satu error tidak mematikan seluruh situs. Node.js lebih unggul untuk aplikasi yang membutuhkan koneksi terbuka lama, seperti chat atau notifikasi, karena satu proses bisa memegang ribuan koneksi sekaligus.
Deno (juga buatan Ryan Dahl) dan Bun adalah runtime yang lebih baru. Deno 2.0 (Oktober 2024) sudah bisa membaca package.json dan node_modules, sedangkan Bun 1.0 (September 2023) memakai mesin JavaScriptCore milik Safari. Keduanya menarik dicoba, tetapi Node.js masih pilihan paling aman untuk produksi karena dukungan hosting dan jadwal LTS-nya paling mapan.
Versi Node.js: LTS, Current, dan Jadwal Baru Mulai Node 27
Node.js merilis versi mayor secara rutin, dan tidak semuanya layak dipakai di server produksi. Ada dua status yang perlu Anda kenali:
- Current: versi terbaru dengan fitur paling baru, berlaku enam bulan pertama setelah rilis. Cocok untuk mencoba fitur, bukan untuk produksi.
- LTS (Long Term Support): versi yang dijamin menerima perbaikan bug kritis dan keamanan selama total 30 bulan. Dokumentasi resmi menyarankan aplikasi produksi hanya memakai versi berstatus LTS.
Status versi per 21 Oktober 2026, berdasarkan jadwal resmi proyek Node.js:
| Versi | Status | Dukungan berakhir |
|---|---|---|
| Node.js 26 | Current, LTS mulai 28 Okt 2026 | 30 Apr 2029 |
| Node.js 24 | LTS pemeliharaan | 30 Apr 2028 |
| Node.js 22 | LTS pemeliharaan | 30 Apr 2027 |
| Node.js 20 | Tidak didukung | 30 Apr 2026 |
Rekomendasinya konkret. Proyek yang dimulai sebelum 28 Oktober 2026 sebaiknya memakai Node.js 24, lalu menjadwalkan pindah ke Node.js 26 setelah paket-paket yang dipakai mendukungnya. Proyek yang dimulai sesudah tanggal itu bisa langsung memakai Node.js 26. Jika server Anda masih menjalankan Node.js 20 atau lebih lama, versi itu sudah tidak menerima perbaikan keamanan sejak 30 April 2026 dan perlu segera dinaikkan.
Node.js 26 juga versi terakhir dengan pola lama: dua rilis mayor per tahun, dan hanya versi genap yang menjadi LTS. Mulai Node.js 27, polanya berubah menjadi satu rilis per tahun dengan tiga tahap:
- Alpha (Oktober–Maret): versi uji untuk penulis pustaka, boleh berisi perubahan besar, dan tidak ditujukan untuk produksi. Tahap alpha Node.js 27 dimulai Oktober 2026.
- Current (April–Oktober): masa stabilisasi enam bulan. Node.js 27.0.0 dijadwalkan rilis April 2027.
- LTS (30 bulan): setiap versi kini menjadi LTS, tanpa pembedaan ganjil dan genap lagi.
Nomor versi juga akan mengikuti tahun rilisnya, sehingga Node.js 28 terbit pada 2028. Bagi Anda yang mengelola server, artinya cukup satu jadwal upgrade per tahun, dengan masa dukungan total 36 bulan sejak rilis.

Cara Menggunakan Node.js dari Instalasi sampai Server Pertama
Empat langkah berikut cukup untuk menjalankan server pertama Anda.
Langkah #1: Download dan Install Node.js
Download installer versi LTS dari halaman unduhan nodejs.org untuk Windows atau macOS, lalu jalankan seperti memasang aplikasi biasa. npm ikut terpasang otomatis. Untuk Linux seperti Ubuntu, atau bila Anda perlu berpindah-pindah versi antarproyek, gunakan nvm (Node Version Manager). Setelah nvm terpasang sesuai petunjuk di repositori resminya, pasang dan aktifkan versi yang diinginkan:
nvm install 24
nvm use 24Langkah #2: Cek Versi Node.js yang Terpasang
Cara mengecek apakah Node.js sudah terinstal adalah membuka terminal atau Command Prompt, lalu menjalankan dua perintah berikut:
node -v
npm -vJika muncul nomor versi seperti v24.22.0 dan 11.19.1, Node.js siap dipakai. Jika muncul pesan command not found atau 'node' is not recognized, instalasi belum berhasil atau terminal perlu dibuka ulang agar membaca pengaturan PATH yang baru.
Untuk update Node.js ke versi baru, jalankan ulang installer terbaru dari nodejs.org. Pengguna nvm cukup menjalankan nvm install --lts untuk memasang versi LTS terkini.
Langkah #3: Siapkan Folder Proyek
Buat folder kosong untuk proyek Anda, lalu inisialisasi dengan npm:
mkdir halo-node
cd halo-node
npm init -yPerintah terakhir membuat berkas package.json yang mencatat nama proyek, perintah yang bisa dijalankan, dan daftar paket yang dipakai.
Langkah #4: Jalankan Server dengan Mode Pantau
Salin contoh server.js dari section "Fungsi dan Kegunaan Node.js" ke folder tersebut, lalu jalankan dengan opsi --watch:
node --watch server.jsDengan opsi ini, Node.js otomatis memulai ulang server setiap kali berkas disimpan, tanpa paket tambahan seperti nodemon.
Menjalankan Node.js di Hosting atau VPS
Agar aplikasi bisa diakses publik, Anda perlu menaruhnya di server. Ada dua jalur yang umum, masing-masing dengan batasannya.
Shared hosting cPanel cocok untuk aplikasi kecil seperti API sederhana, bot, atau situs portofolio. Sejumlah layanan web hosting berbasis cPanel menyediakan menu Setup Node.js App untuk memilih versi Node.js, menentukan folder aplikasi, dan menjalankan npm install dari panel. Langkah lengkapnya ada di panduan setting Node.js di hosting cPanel. Batasannya, sumber daya dibagi dengan pengguna lain dan Anda tidak bisa mengatur proses secara bebas.
VPS cocok ketika aplikasi membutuhkan WebSocket atau melayani lalu lintas yang terus naik. Di VPS Anda memegang akses root, sehingga bisa memasang pengelola proses seperti PM2 yang menyalakan ulang aplikasi otomatis saat mati. Nginx lalu ditaruh di depannya sebagai reverse proxy yang meneruskan permintaan dari port 80 dan 443 ke port aplikasi. Alternatifnya, aplikasi dibungkus dalam container Docker memakai image resmi node.
Untuk satu aplikasi Node.js kecil beserta database-nya, VPS Indonesia dengan RAM 1 GB sudah memadai sebagai titik awal. Naikkan ke 2 GB bila Anda juga menjalankan proses build frontend seperti Next.js di server yang sama, karena tahap build itulah yang paling rakus memori.
Pertanyaan Seputar Node.js
Apakah Node.js aman dipakai?
Node.js sendiri aman selama Anda memakai versi yang masih didukung, karena tim keamanannya rutin merilis tambalan untuk versi LTS. Risiko yang lebih sering justru datang dari paket pihak ketiga. Jalankan npm audit secara berkala, kunci versi paket lewat package-lock.json, dan hindari paket yang sudah lama tidak dirawat.
Node.js termasuk frontend atau backend?
Node.js adalah teknologi backend karena berjalan di server, bukan di browser pengunjung. Karena itulah istilah "Node.js backend" sering dipakai untuk menyebut backend JavaScript. Namun, developer frontend juga memakainya setiap hari untuk menjalankan perkakas build dan server pengembangan.
Apakah harus menguasai JavaScript sebelum belajar Node.js?
Ya, minimal dasar-dasarnya: variabel, fungsi, objek, array, dan terutama Promise serta async/await. Konsep asinkron ini dipakai di hampir setiap baris kode Node.js.
Apa hubungan Node.js dengan npm?
npm adalah pengelola paket bawaan Node.js. Node.js menjalankan kode, sedangkan npm mengunduh dan mengatur paket yang dibutuhkan kode tersebut. Keduanya terpasang bersamaan, dan Node.js 26 menyertakan npm versi 11.20.
Kesimpulan
Node.js adalah runtime yang membawa JavaScript keluar dari browser dengan menggabungkan V8, event loop dari libuv, dan pustaka bawaan. Model satu thread yang tidak pernah menunggu membuatnya efisien untuk API, aplikasi real-time, dan perkakas pengembangan. Kelemahannya muncul saat hitungan berat menahan event loop.
Pilih Node.js bila aplikasi Anda lebih banyak menunggu database dan jaringan daripada menghitung. Pakai versi LTS, yaitu Node.js 24, atau Node.js 26 setelah 28 Oktober 2026. Untuk komputasi berat atau website konten di shared hosting biasa, PHP, Go, atau Python bisa lebih tepat.
Semoga artikel ini membantu.




