Rumah > hujung hadapan web > tutorial js > Bagaimanakah JavaScript Mengendalikan Hantaran Pembolehubah dan Pengubahsuaian Objek?

Bagaimanakah JavaScript Mengendalikan Hantaran Pembolehubah dan Pengubahsuaian Objek?

Patricia Arquette
Lepaskan: 2024-12-16 05:41:19
asal
192 orang telah melayarinya

How Does JavaScript Handle Variable Passing and Object Modification?

Melalui Pembolehubah melalui Rujukan dalam JavaScript

JavaScript tidak mempunyai konsep "laluan rujukan" yang terdapat dalam bahasa pengaturcaraan lain. Walau bagaimanapun, ia membenarkan menghantar objek mengikut nilai, membenarkan fungsi mengubah suai kandungannya.

Melalui Objek mengikut Nilai

Untuk mengubah suai kandungan objek dalam fungsi, lulus objek sendiri sebagai parameter:

function alterObject(obj) { obj.foo = "goodbye"; }
var myObj = { foo: "hello world" };
alterObject(myObj);
console.log(myObj.foo); // "goodbye"
Salin selepas log masuk

Mengubah suai Tatasusunan

Untuk mengubah suai elemen tatasusunan, ulangi indeks berangkanya dan kemas kini setiap sel secara individu:

var arr = [1, 2, 3];
for (var i = 0; i < arr.length; i++) arr[i] = arr[i] + 1;
Salin selepas log masuk

"Pass by Rujukan" dalam JavaScript

JavaScript tidak mempunyai kefungsian "pass by reference" sebenar. Ini bermakna adalah mustahil untuk mengubah suai nilai pembolehubah asal dalam panggilan fungsi, tidak seperti dalam bahasa seperti C .

Dalam contoh di bawah, menukar nilai x dan y gagal kerana nilai tersebut diluluskan dan tidak boleh diubah suai terus dalam fungsi:

function swap(a, b) { var tmp = a; a = b; b = tmp; }
var x = 1, y = 2;
swap(x, y);
console.log("x is " + x + ", y is " + y); // "x is 1, y is 2"
Salin selepas log masuk

Kesimpulan

Semasa JavaScript tidak menawarkan "laluan rujukan" dalam erti kata tradisional, menghantar objek dan memanipulasi kandungannya membolehkan kefungsian yang serupa. Ambil perhatian bahawa teknik ini mengubah suai kandungan objek, bukan rujukan objek itu sendiri.

Atas ialah kandungan terperinci Bagaimanakah JavaScript Mengendalikan Hantaran Pembolehubah dan Pengubahsuaian Objek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan