Pengenalan kepada Akses Parameter Fungsi
Mendapatkan semula nama dan nilai parameter fungsi secara dinamik boleh menjadi teknik yang berharga untuk mengoptimumkan kod. Artikel ini meneroka kaedah komprehensif untuk menyelesaikan tugas ini dalam pelbagai persekitaran JavaScript.
Mendapatkan Nama Parameter Fungsi
Fungsi getParamNames mengembalikan tatasusunan nama parameter untuk fungsi tertentu . Ia menggunakan ungkapan biasa untuk mengekstrak nama parameter daripada kod sumber fungsi. Berikut ialah kodnya:
var STRIP_COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg; var ARGUMENT_NAMES = /([^\s,]+)/g; function getParamNames(func) { var fnStr = func.toString().replace(STRIP_COMMENTS, ''); var result = fnStr.slice(fnStr.indexOf('(')+1, fnStr.indexOf(')')).match(ARGUMENT_NAMES); if(result === null) result = []; return result; }
Mendapatkan Nilai Parameter Fungsi
Selain nama parameter, anda juga boleh mengakses nilai parameter menggunakan objek argumen dalam fungsi. Objek ini mengandungi senarai semua parameter yang dihantar kepada fungsi.
Contoh Penggunaan
Untuk mendapatkan kedua-dua nama dan nilai parameter:
function doSomething(param1, param2, .... paramN){ // Convert arguments object to an array let argsArray = Array.from(arguments); // Create an array to store parameter data let paramData = []; // Loop through parameters for (let i = 0; i < argsArray.length; i++) { paramData.push({ name: getParamNames(doSomething)[i], value: argsArray[i] }); } // Use the paramData array as needed }
Contoh ini secara dinamik mendapatkan semula kedua-dua nama dan nilai parameter, membolehkan anda mengakses maklumat ini dalam fungsi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Nama dan Nilai Parameter Fungsi Secara Dinamik dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!