Objek dasar
Literal, properti, method, this, computed key.
Pahami konsepnya
Objek adalah kumpulan pasangan kunci-nilai: const user = { nama: "Ari", umur: 17 }. Akses via titik (user.nama) atau kurung siku (user["nama"]) — kurung siku menerima variabel dan string dinamis. Properti baru ditambah dengan assignment: user.email = "a@b.c"; dihapus dengan delete user.email.
Method adalah properti yang nilainya fungsi: sapa() { return "Halo " + this.nama }. this di dalam method merujuk objek pemanggil — TAPI this di arrow function mengambil this dari scope luar (lexical this), bukan objek. Ini perbedaan penting: gunakan method biasa untuk this; gunakan arrow untuk callback yang butuh this dari luar.
Computed key: { [kunci]: nilai } menggunakan nilai variabel sebagai nama properti. Shorthand: { nama, umur } bila nama variabel sama dengan properti.
Coba contoh kode
const user = {
nama: "Ari",
umur: 17,
sapa() { return `Halo ${this.nama}!`; },
["level_" + 1]: "gold", // computed key
};
console.log(user.sapa());
console.log(user["umur"]); // kurung siku
console.log(user.level_1); // gold
// shorthand
const nama = "Budi", umur = 20;
const singkat = { nama, umur };
console.log(singkat);this.nama di dalam method merujuk objek user. Computed key ["level_" + 1] menghitung nama properti dari ekspresi. Shorthand { nama, umur } setara { nama: nama, umur: umur }.
Latihan singkat
Uji: objek {nama:"Ari",umur:17} → cetak `Ari (17)`.