Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengambil Secara Dinamik Pembolehubah Tempatan mengikut Nama dalam JavaScript?

Bagaimana untuk Mengambil Secara Dinamik Pembolehubah Tempatan mengikut Nama dalam JavaScript?

Linda Hamilton
Lepaskan: 2024-11-11 03:33:02
asal
625 orang telah melayarinya

How to Dynamically Retrieve Local Variables by Name in JavaScript?

Pendapatan Dinamik Pembolehubah Tempatan mengikut Nama dalam JavaScript

Dalam JavaScript, mengakses pembolehubah global mengikut nama adalah mudah menggunakan objek tetingkap. Tetapi bagaimana dengan pembolehubah tempatan yang ditakrifkan dalam skrip tertentu? Bolehkah mereka diakses secara dinamik dengan nama mereka?

Satu kaedah melibatkan mengambil kesempatan daripada skop global:

//in one script
var someVarName_10 = 20;

//in another script
alert(window["someVarName_10"]); //alert 20
Salin selepas log masuk

Walau bagaimanapun, pendekatan ini mungkin tidak sesuai kerana ia bergantung pada pembolehubah yang ditambah kepada skop global.

Alternatif lain ialah menggunakan fungsi eval():

//in one script
var num = 10;
alert(eval('someVarName_' + num)); //alert 20
Salin selepas log masuk

Kaedah ini menilai ungkapan rentetan dan mengembalikan nilai pembolehubah yang sepadan.

Nota: Adalah penting untuk mempertimbangkan kemungkinan implikasi keselamatan apabila menggunakan fungsi eval().

Atas ialah kandungan terperinci Bagaimana untuk Mengambil Secara Dinamik Pembolehubah Tempatan mengikut Nama dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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