Variabili ECMAScript

Utilizza l'operatore var per dichiarare la variabile.

Il nome della variabile deve seguire alcune regole semplici.

Dichiara la variabile

Come spiegato nella sezione precedente, le variabili in ECMAScript sono definite con l'operatore var (abbreviazione di variable). Ad esempio:

var test = "hi";

In questo esempio, è stato dichiarato il variabile test e il suo valore è stato inizializzato a "hi" (stringa). Poiché ECMAScript èDi tipo deboleQuindi l'interprete crea automaticamente un valore di stringa per testNon è necessario dichiarare esplicitamente il tipo.

Si può definire anche due o più variabili con una singola istruzione var:

var test1 = "hi", test2 = "hello";

Il codice precedente ha definito la variabile test1 con un valore iniziale "hi" e ha definito anche la variabile test2 con un valore iniziale "hello".

MaLe variabili definite con lo stesso var non devono avere lo stesso tipo,come segue:

var test = "hi", age = 25;

Questo esempio oltre a (nuovamente) definire test, definisce anche age e lo inizializza a 25. Anche se test e age appartengono a due tipi di dati diversi, è completamente legale definirli così in ECMAScript.

Diversamente da Java, le variabili in ECMAScript nonNon è necessario inizializzare(che vengono inizializzati in background e saranno discussi in seguito). Pertanto, la seguente riga di codice è anche valida:

var test;

Inoltre, diversamente da Java, ci sono variabiliPuò contenere valori di diversi tipi. Questo è l'vantaggio delle variabili di tipo debole. Ad esempio, è possibile inizializzare una variabile con un valore di tipo stringa e poi impostarla su un valore numerico, come segue:

var test = "hi";
alert(test);
test = 55;
alert(test);

Questo codice eseguirà senza problemi la stringa di valori e i valori numerici. Tuttavia, come menzionato in precedenza, una buona abitudine di codifica è sempre conservare valori dello stesso tipo quando si utilizzano variabili.

Nomina le variabili

Il nome della variabile deve seguire due semplici regole:

  • Il primo carattere deve essere una lettera, trattino basso (_ o simbolo dollaro ($)
  • I caratteri rimanenti possono essere trattini bassi, simbolo dollaro o qualsiasi carattere alfanumerico

Le seguenti variabili sono legali:

var test;
var $test;
var $1;
var _$te$t2;

Famosa regola di nomi delle variabili

Semplicemente perché la sintassi del nome della variabile è corretta, non significa che debba essere utilizzata. La variabile dovrebbe seguire una delle seguenti famose regole di nomi:

Camel notation

Le prime lettere sono minuscole, e le lettere successive iniziano con maiuscola. Ad esempio:

var myTestValue = 0, mySecondValue = "hi";

Pascal notation

Le prime lettere sono maiuscole, e le lettere successive iniziano con maiuscola. Ad esempio:

var MyTestValue = 0, MySecondValue = "hi";

Hungarian notation

Aggiungi una lettera minuscola (o una sequenza di lettere minuscole) all'inizio del nome delle variabili denominate con PascalCase per indicare il tipo della variabile. Ad esempio, i indica l'intero, s indica la stringa, come nel seguente esempio:

var iMyTestValue = 0, sMySecondValue = "hi";

Questo tutorial utilizza questi prefissi per rendere il codice di esempio più facile da leggere:

Tipo Prefisso Esempio
Array a aValues
Booleano b bFound
Numero a virgola mobile (numero) f fValue
Funzione fn fnMethod
Intero (numero) i iValue
Oggetto o oType
Espressione regolare re rePattern
Stringa s sValue
Variabile (può essere di qualsiasi tipo) v vValue

La dichiarazione delle variabili non è obbligatoria

Un altro aspetto interessante dell'ECMAScript (e una delle principali differenze rispetto ad altri linguaggi di programmazione) è che non è necessario dichiarare le variabili prima di usarle. Ad esempio:

var sTest = "hello ";
sTest2 = sTest + "world";
alert(sTest2);

Nel codice sopra, prima di tutto, sTest è dichiarato come valore di tipo stringa "hello". Nella riga successiva, la variabile sTest2 unisce sTest con la stringa "world". La variabile sTest2 non è stata definita con l'operatore var, è stata inserita qui come se fosse stata già dichiarata.

Quando il programma di interpretazione ECMAScript incontra un identificatore non dichiarato, crea una variabile globale con quel nome e l'inizializza con il valore specificato.

Questo è il vantaggio di questa lingua, ma è anche pericoloso se non si può seguire strettamente le variabili. L'abitudine migliore è dichiarare tutte le variabili come si farebbe con altri linguaggi di programmazione.