Rumah > hujung hadapan web > tutorial js > Bolehkah Anda Dapatkan Nama Pembolehubah Asal Selepas Menyalurkannya kepada Fungsi JavaScript?

Bolehkah Anda Dapatkan Nama Pembolehubah Asal Selepas Menyalurkannya kepada Fungsi JavaScript?

Linda Hamilton
Lepaskan: 2024-11-03 13:33:03
asal
799 orang telah melayarinya

Can You Retrieve the Original Variable Name After Passing It to a JavaScript Function?

Menyingkap Nama Pembolehubah Enigmatik: Misi Yang Mustahil dalam JavaScript

Ranah JavaScript membentangkan paradoks yang aneh apabila ia datang untuk menentukan yang asal nama pembolehubah selepas ia telah dihantar ke fungsi. Sifat semulajadi pemindahan nilai dalam JavaScript bermakna hanya nilai itu sendiri, bukan pengecam asalnya, dihantar ke fungsi.

Pertimbangkan contoh berikut:

function getVariableName(unknownVariable){
  return unknownVariable.originalName;
}

getVariableName(foo); //returns string "foo";
getVariableName(bar); //returns string "bar";
Salin selepas log masuk

Niat di sebalik kod ini adalah untuk mendapatkan semula nama pembolehubah asal selepas ia diserahkan kepada fungsi getVariableName. Walau bagaimanapun, seperti yang ditunjukkan oleh kod, ini adalah tugas yang mustahil. Rentetan "foo" atau "bar" yang dikembalikan hanyalah nilai pembolehubah, bukan nama asalnya.

Punca kemustahilan ini terletak pada mekanisme pemindahan nilai JavaScript. Apabila pembolehubah dihantar ke fungsi, hanya nilainya disalin, bukan rujukannya. Ini bermakna fungsi menerima pembolehubah sementara baharu yang bebas daripada pembolehubah asal. Oleh itu, tiada cara untuk fungsi itu mengakses nama pembolehubah asal.

Oleh itu, usaha untuk mendapatkan semula nama pembolehubah asal selepas pemindahannya kepada fungsi masih sukar difahami dalam alam JavaScript yang penuh teka-teki.

Atas ialah kandungan terperinci Bolehkah Anda Dapatkan Nama Pembolehubah Asal Selepas Menyalurkannya kepada Fungsi JavaScript?. 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