Nilai Primitif vs Rujukan dalam JavaScript
Dalam pengaturcaraan, pembolehubah boleh menyimpan dua jenis nilai: nilai primitif dan nilai rujukan.
Nilai Primitif
Nilai primitif ialah jenis data yang mudah dan tidak berubah seperti nombor, rentetan dan boolean. Ia disimpan terus dalam ruang memori pembolehubah.
Nilai Rujukan
Nilai rujukan ialah rujukan kepada objek yang disimpan di tempat lain dalam ingatan. Mereka tidak menyimpan objek itu sendiri, sebaliknya mengandungi alamat memori yang menunjuk kepadanya.
Penyimpanan Pembolehubah
Dalam JavaScript, primitif disimpan dalam ruang memori pembolehubah . Sebagai contoh, jika anda memberikan nilai 10 kepada pembolehubah yang dipanggil x:
var x = 10;
Nombor 10 disimpan terus dalam ingatan x.
Sebaliknya, objek (termasuk tatasusunan, objek, dan fungsi) diperuntukkan daripada timbunan. Apabila anda menetapkan objek kepada pembolehubah, pembolehubah akan menyimpan rujukan (alamat memori) objek, bukan objek itu sendiri.
var object = { a: 1, b: 2 }; var reference = object; // `reference` is now a reference to `object`
Nilai vs Rujukan Laluan
Apabila menghantar pembolehubah kepada fungsi, primitif dihantar mengikut nilai (salinan nilai sebenar dibuat). Nilai rujukan, bagaimanapun, diluluskan melalui rujukan (rujukan itu sendiri diluluskan). Ini bermakna bahawa sebarang perubahan yang dibuat pada objek melalui pembolehubah rujukan akan dicerminkan dalam objek asal juga.
Kesimpulan
Memahami perbezaan antara nilai primitif dan rujukan adalah penting untuk bekerja dengan pembolehubah dalam JavaScript. Primitif disimpan terus dalam memori pembolehubah, manakala rujukan mengandungi alamat yang menunjuk ke objek yang disimpan di tempat lain dalam ingatan. Nilai pass-by untuk primitif memastikan salinan bebas, manakala rujukan pass-by untuk objek membolehkan pengubahsuaian disegerakkan merentas objek asal dan rujukannya.
Atas ialah kandungan terperinci Apakah Perbezaan Antara Nilai Primitif dan Rujukan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!