Variabel adalah wadah bernama yang menyimpan sebuah nilai, supaya nilai itu bisa dipakai lagi nanti lewat namanya. Nilai (value) adalah datanya: teks kayak "Budi", angka kayak 17, dan lain-lain. Bayangkan kotak berlabel: labelnya nama variabel, isinya nilai.
🧪 Tebakan cepat:
aberisi 5 danbberisi 10. Lalu kamu tulisa = b. Ke mana angka 5 tadi? Tebak dulu, jawabannya ada di bagian "Tukar isi dua variabel".
Bikin variabel: kata kunci, nama, =, nilai
let nama = "Budi";
const umur = 17;
console.log(nama); // Budi
console.log(umur); // 17
Ambil baris pertama:
letadalah kata kunci (keyword) yang artinya "bikin variabel baru". Bikin variabel disebut juga mendeklarasikan.namaadalah nama variabelnya. Kamu bebas memilih, tapi sesudah itu harus ditulis persis sama setiap kali dipakai:nama, bukannameatauNama.=artinya "isi dengan". Bukan:, dan bukan "sama dengan" ala matematika."Budi"adalah nilainya. Teks ditulis di dalam tanda kutip, persis dengan huruf besar-kecilnya. Angka ditulis tanpa kutip:17itu angka,"17"itu teks.;menutup perintahnya.// Budiadalah komentar. Teks setelah//diabaikan JavaScript, di sini cuma menunjukkan apa yang tercetak.
console.log(nama) mencetak isi variabelnya, jadi console menampilkan Budi.
Mengganti isi: let boleh, const menolak
let skor = 0;
skor = 100;
console.log(skor); // 100
const pi = 3.14;
pi = 3.15; // TypeError: Assignment to constant variable.
skor = 100;mengganti isiskor(reassign). Tanpalet, karenaskorsudah ada: kata kuncinya cuma ditulis sekali, waktu variabelnya dibuat.- Kalau nama yang sama dideklarasikan lagi, misalnya
let skor = 100;di bawahlet skor = 0;, JavaScript menolak dengan errorIdentifier 'skor' has already been declared, dan seluruh kode gak jalan sama sekali. const(dari constant) mengunci variabelnya. Mengisinya ulang menghasilkan errorTypeError.
Jadi pilih begini: const kalau isinya gak akan diganti, let kalau nanti diganti (skor, total, hitungan). var adalah cara lama sebelum ada let dan const, dan kode modern menghindarinya. Satu catatan: const cuma mengunci variabelnya. Kalau isinya object, isi object itu masih bisa diubah. Ini dibahas di lesson Objects.
Tukar isi dua variabel
Kalau a langsung diisi b, nilai lama a hilang karena ketimpa. Jadi simpan dulu di variabel bantu, biasanya namanya temp:
let a = 5;
let b = 10;
let temp = a; // temp = 5
a = b; // a = 10
b = temp; // b = 5
let temp = a;menyalin nilaia, yaitu 5, ketemp. Cuma baris ini yang pakailet, karenatempvariabel baru.a = b;mengisiadengan nilaib. Sekarangadanbsama-sama 10, tapi 5 masih aman ditemp.b = temp;mengisibdengan 5 daritemp. Selesai:aberisi 10,bberisi 5.
Jawaban tebakan: angka 5 hilang begitu a = b jalan, dan gak ada cara mengambilnya lagi. Makanya urutannya simpan dulu, baru timpa.
⚠️ Jebakan yang sering ketemu
- Pakai
:atau lupa=.let nama : "Budi"danlet nama "Budi"itu error. Yang benarlet nama = "Budi";. - Angka diberi tanda kutip.
const umur = "17"menyimpan teks, bukan angka. Tulis17tanpa kutip. letatauconstlagi waktu mengganti isi.let temp = 10;atauconst a = 10;untuk variabel yang sudah ada bikin error. Mengganti isi cukuptemp = 10;.- Lupa nama variabelnya.
const = 17gak punya nama, jadi isinya gak bisa dipanggil lagi.
TL;DR: Variabel adalah wadah bernama untuk sebuah nilai. Bentuknya let nama = "Budi";: kata kunci, nama, =, lalu nilai. Teks pakai kutip, angka tanpa kutip. Mengganti isi cukup nama = "Andi"; tanpa let, karena satu nama cuma boleh dideklarasikan sekali. const menolak diisi ulang (TypeError), let boleh, dan var cara lama yang dihindari. Menukar dua nilai butuh variabel bantu temp: simpan, timpa, lalu ambil lagi.