2011-08-16 18 views
9

Eventuali duplicati:
Difference between using var and not using var in JavaScript
Should I use window.variable or var?Finestra vs Var dichiarare variabile

ho visto due modi per dichiarare una classe in javascript.

come

window.ABC = .... 

o

var ABC = .... 

C'è qualche differenza in termini di utilizzo della classe/variabili?

+0

Non ci sono classi in JavaScript. Stai solo dichiarando una variabile. Si prega di fornire ulteriori informazioni. –

+0

Grazie a tutti! –

risposta

16

window.ABC Scopes la variabile ABC a portata finestra (con efficacia globale.)

var ABC Scopes la variabile ABC per qualsiasi funzione alla variabile ABC risiede in.

3

window rende la variabile globale alla finestra. A meno che non si abbia una ragione per fare diversamente, dichiarare le variabili con var.

9

var crea una variabile per l'ambito corrente. Quindi se lo fai in una funzione, non sarà accessibile al di fuori di esso.

function foo() { 
    var a = "bar"; 
    window.b = "bar"; 
} 

foo(); 
alert(typeof a); //undefined 
alert(typeof b); //string 
alert(this == window); //true 
4

Se si è al di fuori di una funzione di dichiarare le variabili, che sono equivalenti.

2

La principale differenza è che i dati sono ora collegati all'oggetto della finestra anziché solo in memoria. Altrimenti, è lo stesso.

Problemi correlati