⊗jsPmClCNL 264 of 505 menu

Lokale Zählervariable in JavaScript

Betrachten wir den folgenden Code:

function test() { let num = 1; return function() { console.log(num); num++; }; } test()(); // gibt 1 aus test()(); // gibt 1 aus

Warum wird immer die Zahl 1 ausgegeben? Um das zu verstehen, schreiben wir unseren Code anders um:

function test() { let num = 1; return function() { console.log(num); num++; }; }; let func1 = test(); //!! erste Funktion func1(); //gibt 1 aus let func2 = test(); //!! zweite Funktion func2(); //gibt 1 aus

Das heißt, jeder Aufruf der Funktion test auf diese Weise: test()(), erstellt eine eigene Funktion mit ihrem eigenen Closure und ruft diese Funktion sofort auf.

Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:

function func() { let num = 0; return function() { console.log(num); num++; }; } func()(); func()(); func()();

Bestimmen Sie, ohne den Code auszuführen, was in der Konsole ausgegeben wird:

function func() { let num = 0; return function() { console.log(num); num++; }; } let test = func; test()(); test()(); test()();
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen