Selain array, struktur data penting lain dalam JavaScript adalah object. Jika array cocok digunakan untuk menyimpan data dalam bentuk daftar, object digunakan untuk menyimpan data dalam bentuk pasangan key dan value (nama properti dan nilainya). Object sangat berguna ketika kamu ingin menyimpan informasi yang memiliki atribut.
🔹 Apa Itu Object?
Object dalam JavaScript adalah kumpulan properti. Setiap properti memiliki nama (key) dan nilai (value).
1let mahasiswa = {
2 nama: "Rina",
3 umur: 21,
4 jurusan: "Informatika"
5};
6
1let mahasiswa = {
2 nama: "Rina",
3 umur: 21,
4 jurusan: "Informatika"
5};
6
Object mahasiswa
di atas memiliki tiga properti: nama
, umur
, dan jurusan
.
🔹 Mengakses Properti Object
Ada dua cara untuk mengakses nilai properti dalam object:
1console.log(mahasiswa.nama); // Rina
2console.log(mahasiswa["umur"]); // 21
3
1console.log(mahasiswa.nama); // Rina
2console.log(mahasiswa["umur"]); // 21
3
🔹 Menambahkan dan Mengubah Properti
1mahasiswa.semester = 4; // Menambahkan properti baru
2mahasiswa.umur = 22; // Mengubah nilai properti
3
1mahasiswa.semester = 4; // Menambahkan properti baru
2mahasiswa.umur = 22; // Mengubah nilai properti
3
🔹 Menghapus Properti
Gunakan kata kunci delete
:
1delete mahasiswa.jurusan;
2
1delete mahasiswa.jurusan;
2
🔹 Object dengan Nilai Berupa Array atau Object
Properti dalam object bisa berupa array atau object lain:
1let produk = {
2 nama: "Laptop",
3 harga: 10000000,
4 spesifikasi: {
5 prosesor: "Intel i5",
6 ram: "16GB",
7 penyimpanan: "512GB SSD"
8 },
9 warna: ["Hitam", "Silver", "Putih"]
10};
11
12console.log(produk.spesifikasi.ram); // 16GB
13console.log(produk.warna[1]); // Silver
14
1let produk = {
2 nama: "Laptop",
3 harga: 10000000,
4 spesifikasi: {
5 prosesor: "Intel i5",
6 ram: "16GB",
7 penyimpanan: "512GB SSD"
8 },
9 warna: ["Hitam", "Silver", "Putih"]
10};
11
12console.log(produk.spesifikasi.ram); // 16GB
13console.log(produk.warna[1]); // Silver
14
🔹 Menelusuri Semua Properti dalam Object
Gunakan loop for...in
untuk iterasi semua properti:
1for (let key in mahasiswa) {
2 console.log(key + ": " + mahasiswa[key]);
3}
4
1for (let key in mahasiswa) {
2 console.log(key + ": " + mahasiswa[key]);
3}
4
🔹 Method dalam Object
Object juga bisa memiliki method, yaitu fungsi yang menjadi nilai dari suatu properti:
1let user = {
2 nama: "Dina",
3 sapa: function() {
4 console.log("Halo, nama saya " + this.nama);
5 }
6};
7
8user.sapa(); // Halo, nama saya Dina
9
1let user = {
2 nama: "Dina",
3 sapa: function() {
4 console.log("Halo, nama saya " + this.nama);
5 }
6};
7
8user.sapa(); // Halo, nama saya Dina
9
🔹 Shorthand Property & Method (ES6)
Jika key dan nama variabel bernilai sama:
1let nama = "Budi";
2let umur = 25;
3
4let orang = { nama, umur };
5
1let nama = "Budi";
2let umur = 25;
3
4let orang = { nama, umur };
5
Shorthand method:
1let kendaraan = {
2 nyalakan() {
3 console.log("Mesin dinyalakan!");
4 }
5};
6
1let kendaraan = {
2 nyalakan() {
3 console.log("Mesin dinyalakan!");
4 }
5};
6
🔹 Menggunakan Object.keys()
, Object.values()
, dan Object.entries()
Metode ini berguna untuk mengambil isi dari object:
1let buku = { judul: "Belajar JS", penulis: "Ani" };
2
3console.log(Object.keys(buku)); // ["judul", "penulis"]
4console.log(Object.values(buku)); // ["Belajar JS", "Ani"]
5console.log(Object.entries(buku));// [["judul", "Belajar JS"], ["penulis", "Ani"]]
6
1let buku = { judul: "Belajar JS", penulis: "Ani" };
2
3console.log(Object.keys(buku)); // ["judul", "penulis"]
4console.log(Object.values(buku)); // ["Belajar JS", "Ani"]
5console.log(Object.entries(buku));// [["judul", "Belajar JS"], ["penulis", "Ani"]]
6
🔹 Object Bersarang (Nested Object)
1let dataSiswa = {
2 nama: "Ari",
3 alamat: {
4 kota: "Bandung",
5 kodePos: 40115
6 }
7};
8
9console.log(dataSiswa.alamat.kota); // Bandung
10
1let dataSiswa = {
2 nama: "Ari",
3 alamat: {
4 kota: "Bandung",
5 kodePos: 40115
6 }
7};
8
9console.log(dataSiswa.alamat.kota); // Bandung
10
Dengan menguasai object, kamu bisa menyimpan dan mengelola data dengan struktur yang fleksibel dan mudah diakses. Di JavaScript modern, object adalah bagian inti dari banyak hal—termasuk data API, konfigurasi program, dan komponen di library seperti React.