Blog MSBU | Tips & Insight Dunia IT Recruitment

Kapan Harus Menggunakan Var, Let, atau Const di JavaScript?

Written by Hastin Lia | 10 Sep 2025

JavaScript adalah bahasa pemrograman yang terus berkembang, dan salah satu perubahan paling signifikan datang sejak hadirnya ES6 (ECMAScript 2015) dengan diperkenalkannya let dan const sebagai alternatif dari var. Ketiga keyword ini digunakan untuk deklarasi variabel, tetapi cara kerjanya berbeda. Bagi pemula maupun developer berpengalaman, memahami perbedaan var, let, const dan mengetahui kapan harus menggunakannya sangat penting agar kode lebih aman, efisien, dan bebas dari bug yang sulit dilacak.

Mengapa Ada Tiga Cara Deklarasi Variabel di JavaScript

Sebelum ES6, JavaScript hanya memiliki var sebagai cara mendeklarasikan variabel. Namun, var memiliki kelemahan besar: tidak memiliki block scope (cakupan blok) dan bisa menyebabkan hoisting yang membingungkan. Karena itu, ES6 memperkenalkan let dan const untuk memberi developer kontrol yang lebih baik terhadap variabel.

Sekarang, ketiga cara ini masih valid, tetapi masing-masing punya kegunaan dan best practice tersendiri. Mari kita bahas satu per satu.

Baca juga: Closure dalam JavaScript: Konsep, Fungsi, dan Contoh Sederhana

Apa Itu Var?

Var adalah cara lama untuk mendeklarasikan variabel di JavaScript. Karakteristiknya adalah:

  • Function-scoped: artinya, variabel yang dideklarasikan dengan var hanya terbatas dalam cakupan fungsi, bukan blok.
  • Hoisting: deklarasi var akan dipindahkan ke atas scope saat eksekusi, sehingga variabel bisa digunakan bahkan sebelum dideklarasikan.
  • Bisa redeclare: variabel yang sama bisa dideklarasikan ulang tanpa error.

Contoh:

function testVar() {

  if (true) {

    var name = "Alice";

  }

  console.log(name); // "Alice" meskipun dideklarasikan dalam blok if

}

testVar();

Di contoh di atas, variabel name tetap bisa diakses di luar blok if, karena var tidak mengenal block scope.

Kapan Menggunakan Var?

Saat ini, penggunaan var sangat jarang direkomendasikan kecuali untuk alasan kompatibilitas dengan kode lama atau environment JavaScript yang belum mendukung ES6. Untuk proyek modern, hampir semua developer beralih ke let atau const.

Apa Itu Let?

Let diperkenalkan di ES6 sebagai pengganti var dengan cakupan lebih baik. Karakteristik let adalah:

  • Block-scoped: variabel hanya bisa diakses di dalam blok {} tempat ia dideklarasikan.
  • Tidak bisa redeclare dalam scope yang sama.
  • Bisa di-update: nilai variabel bisa diubah setelah deklarasi.

Contoh:

function testLet() {

  if (true) {

    let age = 25;

    console.log(age); // 25

  }

  console.log(age); // ReferenceError: age is not defined

}

testLet();

Let sangat berguna untuk variabel yang nilai atau state-nya akan berubah selama program berjalan.

Kapan Menggunakan Let?

Gunakan let ketika Anda membutuhkan variabel yang nilainya akan berubah. Contoh: counter dalam loop, status sementara dalam fungsi, atau nilai yang diperbarui dari input pengguna.

Apa Itu Const?

Const juga hadir sejak ES6, dengan karakteristik:

  • Block-scoped, sama seperti let.
  • Tidak bisa di-reassign: setelah diinisialisasi, nilai variabel const tidak bisa diubah.
  • Harus diinisialisasi saat deklarasi.

Contoh:

const PI = 3.14159;

PI = 3; // TypeError: Assignment to constant variable.

Namun, penting dipahami bahwa const tidak membuat data menjadi immutable, terutama untuk objek dan array. Yang tidak bisa diubah adalah referensinya, bukan kontennya.

Contoh dengan Objek:

const user = { name: "Alice", age: 25 };

user.age = 26; // Ini valid, karena hanya properti objek yang berubah

console.log(user.age); // 26

Kapan Menggunakan Const?

Gunakan const untuk variabel yang nilainya tidak akan berubah sepanjang program, seperti konfigurasi, nilai tetap (PI, URL API, dsb.), atau referensi objek yang tidak akan diganti dengan objek baru.

Perbedaan Utama Var, Let, dan Const

Agar lebih mudah dipahami, berikut tabel ringkas perbedaannya:

Fitur

var

let

const

Scope

Function-scoped

Block-scoped

Block-scoped

Hoisting

Ya, inisialisasi undefined

Ya, tapi tidak bisa dipakai sebelum deklarasi

Ya, tapi tidak bisa dipakai sebelum deklarasi

Bisa redeclare

Ya

Tidak

Tidak

Bisa di-update

Ya

Ya

Tidak (kecuali isi objek/array)

Best Practice: Kapan Menggunakan Var, Let, atau Const?

Dalam praktik modern, developer jarang sekali menggunakan var. Lebih baik fokus pada let dan const. Berikut panduan penggunaannya:

  1. Gunakan const secara default
    Jika sebuah variabel tidak akan berubah, gunakan const. Ini membuat kode lebih aman dan jelas bagi pembaca.
  2. Gunakan let bila nilai variabel akan berubah
    Misalnya counter dalam loop atau nilai status yang diperbarui.
  3. Hindari var kecuali benar-benar diperlukan
    Hanya gunakan var untuk alasan kompatibilitas dengan kode lama.

Contoh Penggunaan Sehari-hari

// Gunakan const untuk nilai tetap

const API_URL = "https://api.example.com";

// Gunakan let untuk nilai yang berubah

let counter = 0;

for (let i = 0; i < 5; i++) {

  counter += i;

}

console.log(counter); // 10

// Hindari var

var oldVariable = "legacy code";

Kesalahan Umum dalam Menggunakan Var, Let, dan Const

Beberapa kesalahan yang sering terjadi pada developer:

  • Menggunakan var tanpa menyadari hoisting → bisa menyebabkan bug karena variabel digunakan sebelum deklarasi.
  • Menggunakan let padahal variabel tidak berubah → lebih baik gunakan const agar lebih aman.
  • Mengira const membuat data benar-benar immutable → sebenarnya hanya membuat referensi tetap. Isi array atau objek masih bisa diubah.
  • Redeclare variabel dengan var → bisa menimpa variabel sebelumnya tanpa disadari.

Tips Menulis Kode JavaScript Lebih Baik dengan Let dan Const

  • Biasakan selalu mulai dengan const. Jika ternyata nilai perlu diubah, baru ganti ke let.
  • Gunakan let untuk loop variabel seperti for (let i = 0; i < n; i++).
  • Jangan gunakan var untuk kode baru. Jika menemukan var di proyek lama, pertimbangkan untuk refactor ke let atau const.
  • Dokumentasikan variabel yang penting dengan komentar agar tim paham kapan nilai boleh diubah dan kapan tidak.

Baca juga: 10 Tools Data Engineering yang Wajib Dikuasai di 2025

Kesimpulan

Memahami perbedaan var, let, dan const di JavaScript adalah keterampilan fundamental bagi developer modern. Gunakan const untuk variabel yang tidak berubah, gunakan let untuk variabel yang dinamis, dan hindari var kecuali demi kompatibilitas dengan kode lama. Dengan praktik yang konsisten, kode JavaScript Anda akan lebih aman, terstruktur, dan mudah dipahami oleh tim.

Temukan Lowongan Pekerjaan Di MSBU Konsultan!