Variabel dalam JavaScript

Variabel (var, let, const) dalam JavaScript

Variabel dalam JavaScript digunakan untuk menyimpan nilai yang dapat digunakan atau diubah dalam program. Ada tiga cara untuk mendeklarasikan variabel di JavaScript: var, let, dan const. Berikut adalah perbedaan antara ketiganya:

Fitur

var

let

const

Scope

Function-scoped

Block-scoped

Block-scoped

Reassign Value

Yes

Yes

No (immutable)

Hoisting

Yes (hanya deklarasi)

Yes (tidak boleh digunakan sebelum deklarasi)

Yes (tidak boleh digunakan sebelum deklarasi)

Penjelasan Singkat:

  1. Scope:

    • var: Variabel var diberlakukan sebagai variabel yang bersifat function-scoped. Ini berarti variabel var hanya dapat diakses di dalam fungsi di mana itu dideklarasikan.

    • let dan const: Kedua variabel ini adalah block-scoped, artinya mereka hanya dapat diakses di dalam blok di mana mereka dideklarasikan (seperti blok { ... }, fungsi, atau modul).

  2. Reassign Value:

    • var dan let: Keduanya memungkinkan untuk menetapkan ulang nilai variabel setelah deklarasi awal.

    • const: Variabel yang dideklarasikan dengan const tidak dapat ditugaskan kembali setelah pertama kali nilainya ditetapkan. Namun, untuk objek dan array yang dideklarasikan dengan const, properti mereka dapat dimutasi.

  3. Hoisting:

    • var: Variabel var akan di-"hoist" (dinaikkan) ke atas lingkup fungsinya, yang berarti deklarasi variabel var dapat diakses sebelum sebenarnya dideklarasikan dalam kode.

    • let dan const: Kedua variabel ini tidak di-"hoist" dalam arti bahwa mereka tidak dapat digunakan sebelum mereka dideklarasikan dalam kode.

Contoh Penggunaan

Penggunaan var

var x = 10;
function exampleVar() {
    var y = 20;
    console.log(x);  // Output: 10
    console.log(y);  // Output: 20
}
console.log(x);      // Output: 10
console.log(y);      // Error: y is not defined
  • var memiliki cakupan fungsi.

  • x bisa diakses di dalam dan di luar fungsi.

  • y hanya bisa diakses di dalam fungsi.

Penggunaan let

let a = 30;
function exampleLet() {
    let b = 40;
    console.log(a);  // Output: 30
    console.log(b);  // Output: 40
}
console.log(a);      // Output: 30
console.log(b);      // Error: b is not defined
  • let memiliki cakupan blok.

  • a bisa diakses di dalam dan di luar fungsi.

  • b hanya bisa diakses di dalam blok fungsi.

Penggunaan const

const PI = 3.14;
PI = 3.14159;  // Error: Assignment to constant variable
  • const juga memiliki cakupan blok.

  • Nilai const tidak bisa diubah setelah dideklarasikan.

Sumber

Tabel di atas memberikan gambaran singkat tentang perbedaan antara var, let, dan const dalam JavaScript. Jika ada pertanyaan lebih lanjut atau memerlukan penjelasan tambahan, silakan tanyakan!

Last updated