← JavaScript22 / 69
Spread: menyalin tanpa merusak
Ini bab paling penting dalam modul ini. const b = a bukan menyalin object — keduanya menunjuk ke data yang sama, jadi mengubah b juga mengubah a. Inilah 'kenapa object saya berubah sendiri'. Spread (...) membuat salinan baru: const b = { ...a }. React sangat bergantung pada ini karena ia mendeteksi perubahan dari identitas object, bukan isinya.
👀 Contoh dulu
const asli = { nama: 'Kopi', stok: 5 };
// ❌ BUKAN salinan — dua nama untuk data yang SAMA
const salah = asli;
salah.stok = 99;
console.log(asli.stok); // ikut berubah!
// ✅ salinan sungguhan
const benar = { ...asli, stok: 1 };
console.log(asli.stok, benar.stok);Hasilnya: 99 99 1
💡 Spread menyalin isi ke object BARU. Properti yang ditulis SETELAH ...asli akan menimpa nilai aslinya.
📝 Sekarang giliranmu
Buat const userBaru yang merupakan salinan user dengan umur diubah menjadi 21, memakai spread. Tampilkan user dan userBaru untuk membuktikan aslinya tidak berubah.
Preview