Heim > Web-Frontend > js-Tutorial > Wie vermeide ich die sofortige Ausführung von Funktionen, die in JavaScript als Parameter übergeben werden?

Wie vermeide ich die sofortige Ausführung von Funktionen, die in JavaScript als Parameter übergeben werden?

DDD
Freigeben: 2024-12-01 12:59:13
Original
771 Leute haben es durchsucht

How to Avoid Immediately Executing Functions Passed as Parameters in JavaScript?

Übergabe von Funktionen als Parameter in JavaScript

Durch die Übergabe von Funktionen als Parameter können Sie wiederverwendbaren und anpassbaren Code erstellen. Allerdings kann die Ausführung der Funktion innerhalb der übergeordneten Funktion unerwünscht sein. So vermeiden Sie das.

Problem:

Bedenken Sie den folgenden Code:

addContact(entityId, refreshContactList());
Nach dem Login kopieren

Diese Anweisung ruft jedoch sofort „refreshContactList()“ auf es soll ausgeführt werden später.

Lösung:

Um die Funktion zu übergeben, ohne sie auszuführen, entfernen Sie einfach die Klammern:

addContact(entityId, refreshContactList);
Nach dem Login kopieren

Beispiel:

function addContact(id, refreshCallback) {
    refreshCallback();
    // You can also pass arguments if you need to
    // refreshCallback(id);
}

function refreshContactList() {
    alert('Hello World');
}

addContact(1, refreshContactList);
Nach dem Login kopieren

In diesem Szenario wird „refreshContactList()“ als Parameter übergeben und wird ausgeführt innerhalb der Funktion addContact() ausgeführt werden.

Das obige ist der detaillierte Inhalt vonWie vermeide ich die sofortige Ausführung von Funktionen, die in JavaScript als Parameter übergeben werden?. 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