Stack-Konzept
Es gibt kein Stack-Konzept in Js. Es wird zum leichteren Verständnis und besseren Lernen eingeführt:
Datentyp
Basistypdaten werden als Werttyp bezeichnet, und komplexer Typ wird auch als Referenztyp bezeichnet
a. Werttyp, einfacher Datentyp , Was in einer Variablen gespeichert wird, ist der Wert selbst, daher wird er als Werttyp bezeichnet.
b. Referenztyp, komplexer Datentyp. Beim Speichern speichert die Variable nur die Adresse und verwendet sie als Referenz, daher wird sie als Referenzdatentyp bezeichnet.
Stack- und Heap-Speicherplatzzuweisungskonzepte
1 Der Stack
wird vom Betriebssystem automatisch zugewiesen und freigegeben Speichern Sie die Parameterwerte der Funktion, den Wert lokaler Variablen usw. Die Operationsmethode ähnelt dem Stapel in der Datenstruktur.
2. Der Heap
speichert komplexe Typen (Objekte), die im Allgemeinen vom Programmierer zugewiesen und freigegeben werden, und kann auch vom Garbage Collection-Mechanismus recycelt werden verlinkte Liste.
varx =5; vary =6; f1(x,y); functionf1(a,b) { a=a+1; b=b+1; console.log("a="+a);//a=6; console.log("b="+b);//b=7; }
Schritt 1: Vorparsing-Prozessphase, von var und deklarierte Variablen Alle Funktionen oben erwähnt:
var x, var y, function f1(a,b){}
Schritt 2: Ausführungsphase:
x = 5; y = 6; f1(5,6)调用函数,执行函数体代码; 函数里面var a = 5; var b = 6; a = a+1;//6 b = b+1;//7 返回值
Ähnlich: Datenobjekte komplexer Typen werden auf demselben Stapel gespeichert
Das obige ist der detaillierte Inhalt vonWas ist ein JS-Stack?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!