Heim > Web-Frontend > js-Tutorial > Wie führe ich einen Funktionsaufruf aus einem String in JavaScript aus?

Wie führe ich einen Funktionsaufruf aus einem String in JavaScript aus?

DDD
Freigeben: 2024-10-27 12:17:30
Original
780 Leute haben es durchsucht

How to Execute a Function Call from a String in JavaScript?

Aufrufen eines Funktionsaufrufs aus einer Zeichenfolge

In JavaScript ist es möglich, eine Zeichenfolge, die einen Funktionsaufruf darstellt, in einen tatsächlichen Funktionsaufruf umzuwandeln . Stellen Sie sich den Fall vor, dass wir eine Zeichenfolge wie:

"clickedOnItem(" + t.parentNode.id + ")"
Nach dem Login kopieren

haben, die wir in den Funktionsaufruf übersetzen möchten:

clickedOnItem(IdofParent);
Nach dem Login kopieren

Um dies zu erreichen, können wir den folgenden Ansatz verwenden:

<code class="javascript">var fn = window[settings.functionName];
if(typeof fn === 'function') {
    fn(t.parentNode.id);
}</code>
Nach dem Login kopieren

In diesem Snippet rufen wir zunächst die Funktionsreferenz aus dem Fensterobjekt ab, indem wir die in „settings.functionName“ gespeicherte Zeichenfolge verwenden. Wenn die Funktion vorhanden ist, rufen wir sie mit den gewünschten Argumenten auf.

Wenn Settings.functionName beispielsweise auf „clickedOnItem“ gesetzt ist, würde die Ausführung des Codes zu Folgendem führen:

<code class="javascript">var fn = window["clickedOnItem"]; // Fetch the function reference
fn(t.parentNode.id); // Invoke the function</code>
Nach dem Login kopieren

Dies ahmt effektiv den von uns angestrebten manuellen Funktionsaufruf nach. Bedenken Sie, dass dieser Ansatz aufgrund möglicher Sicherheits- und Wartbarkeitsbedenken im Allgemeinen missbilligt wird. Erwägen Sie die Erkundung sichererer Alternativen, z. B. die Verwendung des Funktionskonstruktors oder von Pfeilfunktionen, um Funktionsaufrufe dynamisch zu erstellen.

Das obige ist der detaillierte Inhalt vonWie führe ich einen Funktionsaufruf aus einem String in JavaScript aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage