Heim > Web-Frontend > js-Tutorial > js-Notizen

js-Notizen

不言
Freigeben: 2018-04-26 14:31:20
Original
1342 Leute haben es durchsucht

Dieser Artikel teilt Ihnen einige JS-Notizen mit.

1 JS wird einmal vorkompiliert. a); // undefiniert
Auf diese Weise ist die Bedeutung der Frage sehr klar: Deklarieren Sie zuerst a und bestimmen Sie dann, ob a existiert. Wenn es nicht existiert, weisen Sie es 1 zu.

Offensichtlich ein Testament immer im Fenster vorhanden ist, wird diese Zuweisungsanweisung nie ausgeführt, daher ist das Ergebnis undefiniert.
var a; 
if (!(“a” in window)) { 
   a = 1; 
}
Nach dem Login kopieren


2. Die Funktionsdeklaration überschreibt die Variablendeklaration, aber nicht die Variablenzuweisung

So schnell wie möglich. Die Variablendeklaration ist unten definiert, aber der Variablenwert ist immer noch eine Funktion, was bedeutet, dass in diesem Fall die Priorität der
-Funktionsdeklaration höher ist als die Priorität der Variablendeklaration, aber wenn der Variablenwert vorhanden ist Wird ein Wert zugewiesen, ist das Ergebnis völlig anders:

function value(){ 
   return 1; 
} 
alert(typeof value);    //”function”
Nach dem Login kopieren
Nach dem Login kopieren


Nachdem der Wert zugewiesen wurde, überschreibt die Initialisierung der Variablenzuweisung die Funktionsdeklaration.

function value(){ 
   return 1; 
} 
var value = 1; 
alert(typeof value);    //”number”
Nach dem Login kopieren
Nach dem Login kopieren
Flache Kopie kopiert nur den Basistyp von Daten. Bei Arrays oder Objekten wird nur die Speicheradresse kopiert, sodass die Möglichkeit besteht, dass das Metaobjekt manipuliert wird 🎜>


1. JS wird vorkompiliert


Auf diese Weise ist die Bedeutung der Frage sehr klar: Deklarieren Sie zuerst a und bestimmen Sie dann, ob a existiert. Wenn es nicht existiert, ist die Zuweisung 1.
function copy(p) { 
   let c = {}; 
   for(let i in p) { 
       c[i] = p[i]; 
   } 
   return c; 
}
Nach dem Login kopieren
Nach dem Login kopieren
Es ist offensichtlich, dass a immer im Fenster vorhanden ist. Diese Zuweisungsanweisung wird niemals ausgeführt, daher ist das Ergebnis undefiniert.


2. Die Funktionsdeklaration überschreibt die Variablendeklaration, aber nicht die Variablenzuweisung
var a; 
if (!(“a” in window)) { 
   a = 1; 
} 
alert(a); // undefined
Nach dem Login kopieren



So schnell wie möglich. Die Variablendeklaration ist unten definiert, aber der Variablenwert ist immer noch eine Funktion, was bedeutet, dass in diesem Fall die Priorität der

-Funktionsdeklaration höher ist als die Priorität der Variablendeklaration, aber wenn der Variablenwert vorhanden ist Wird ein Wert zugewiesen, ist das Ergebnis völlig anders:


function value(){ 
   return 1; 
} 
alert(typeof value);    //”function”
Nach dem Login kopieren
Nach dem Login kopieren

Nachdem der Wert zugewiesen wurde, überschreibt die Initialisierung der Variablenzuweisung die Funktionsdeklaration.

Flache Kopie kopiert nur den Basistyp von Daten. Bei Arrays oder Objekten wird nur die Speicheradresse kopiert, sodass die Möglichkeit besteht, dass das Metaobjekt manipuliert wird 🎜>
function value(){ 
   return 1; 
} 
var value = 1; 
alert(typeof value);    //”number”
Nach dem Login kopieren
Nach dem Login kopieren

Verwandte Empfehlungen:

Teilen einer anderen Art, js zu schreiben


function copy(p) { 
   let c = {}; 
   for(let i in p) { 
       c[i] = p[i]; 
   } 
   return c; 
}
Nach dem Login kopieren
Nach dem Login kopieren
Detaillierte Erläuterung der js-Implementierung von Fuzzy-Abfragebeispielen

Das obige ist der detaillierte Inhalt vonjs-Notizen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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