Heim >Web-Frontend >js-Tutorial >Wie kann ich in JavaScript dynamisch auf Funktionsparameternamen und -werte zugreifen?

Wie kann ich in JavaScript dynamisch auf Funktionsparameternamen und -werte zugreifen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-10 14:43:11653Durchsuche

How Can I Dynamically Access Function Parameter Names and Values in JavaScript?

Einführung in den Funktionsparameterzugriff

Das dynamische Abrufen von Funktionsparameternamen und -werten kann eine wertvolle Technik zur Codeoptimierung sein. In diesem Artikel wird eine umfassende Methode zum Ausführen dieser Aufgabe in verschiedenen JavaScript-Umgebungen untersucht.

Funktionsparameternamen abrufen

Die Funktion getParamNames gibt ein Array von Parameternamen für eine bestimmte Funktion zurück . Es verwendet einen regulären Ausdruck, um Parameternamen aus dem Quellcode der Funktion zu extrahieren. Hier ist der Code:

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;
}

Funktionsparameterwerte abrufen

Zusätzlich zu Parameternamen können Sie auch über das Argumentobjekt innerhalb der Funktion auf Parameterwerte zugreifen. Dieses Objekt enthält eine Liste aller an die Funktion übergebenen Parameter.

Verwendungsbeispiel

Um sowohl Parameternamen als auch -werte abzurufen:

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
}

In diesem Beispiel werden Parameternamen und -werte dynamisch abgerufen, sodass Sie innerhalb der Funktion auf diese Informationen zugreifen können.

Das obige ist der detaillierte Inhalt vonWie kann ich in JavaScript dynamisch auf Funktionsparameternamen und -werte zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn