CoffeeScript - Variabili
Le variabili non sono altro che contenitori con nome. È possibile inserire dati in questi contenitori e quindi fare riferimento ai dati utilizzando il nome del relativo contenitore.
Variabili CoffeeScript
In JavaScript, prima di utilizzare una variabile, dobbiamo dichiararla e inizializzarla (assegnare un valore). A differenza di JavaScript, durante la creazione di una variabile in CoffeeScript, non è necessario dichiararla utilizzando ilvarparola chiave. Creiamo semplicemente una variabile semplicemente assegnando un valore a un letterale come mostrato di seguito.
name = variable name
Esempio
Nel seguente codice CoffeeScript, abbiamo definito due variabili name e age, rispettivamente di tipi di dati stringa e numerici. Salvalo in un file con il nomevariable_example.coffee.
name = "Javed"
age = 25
Compiling the code
Compilare il codice CoffeeScript precedente eseguendo il seguente comando nel prompt dei comandi.
c:\> compile -c variable_example.coffee
Durante la compilazione, un file JavaScript denominato variable_example.jsverrà generato con il seguente contenuto. Qui puoi osservare che il compilatore ha dichiarato le variabili (età e nome) utilizzando ilvar parola chiave per nostro conto.
// Generated by CoffeeScript 1.10.0
(function() {
var age, name;
name = "Javed";
age = 25;
}).call(this);
Ambito variabile
L'ambito di una variabile è la regione del programma in cui è definita. Le variabili JavaScript e CoffeeScript hanno solo due ambiti.
Global Variables - Una variabile globale ha un ambito globale, il che significa che può essere utilizzata ovunque nel codice JavaScript.
Local Variables- Una variabile locale sarà visibile solo all'interno di una funzione in cui è definita. I parametri della funzione sono sempre locali rispetto a quella funzione.
Il problema con le variabili in JavaScript
In JavaScript, ogni volta che definiamo una variabile senza utilizzare il varparola chiave, viene creato con ambito globale. Ciò causa molti problemi. Considera il seguente esempio:
<script type = "text/javascript">
var i = 10;
document.write("The value of global variable i is "+ i);
document.write("<br>");
test();
function test() {
i = 20;
document.write("The value of local variable i is "+i);
document.write("<br>");
}
document.write("The value of global variable i is "+i);
</script>
All'esecuzione, il JavaScript sopra ti dà il seguente output:
The value of global variable i is 10
The value of local variable i is 20
The value of global variable i is 20
Nell'esempio precedente, abbiamo creato una variabile denominata inello spazio globale e gli ha assegnato il valore 10. E all'interno della funzione, nel tentativo di creare una variabile locale con lo stesso nome, abbiamo dichiarato come i = 20 ; senza parola chiave var. Dato che abbiamo perso il filevar parola chiave, il valore della variabile globale i viene riassegnato a 20.
Per questo motivo, si consiglia di dichiarare le variabili utilizzando l'estensione var parola chiave.
Ambito variabile in CoffeeScript
Ogni volta che compiliamo un file CoffeeScript, il compilatore CoffeeScript crea una funzione anonima e, all'interno di tale funzione, transcompila il codice CoffeeScript in JavaScript riga per riga. (Se vogliamo, possiamo rimuovere il wrapper della funzione di primo livello usando il-b o --bare opzione del comando compile) Ogni variabile che creiamo viene dichiarata utilizzando il var parola chiave all'interno della funzione anonima e quindi, per impostazione predefinita, ogni variabile è locale in CoffeeScript.
(function() {
var age, name;
name = "javed";
age = 20;
}).call(this);
Ad ogni modo, se vogliamo, possiamo dichiarare una variabile con spazio dei nomi globale. Possiamo farlo esplicitamente come mostrato di seguito.
obj = this
obj.age = 30
Nomi variabili CoffeeScript (letterali)
Durante la denominazione delle variabili in CoffeeScript, tieni a mente le seguenti regole.
Non utilizzare nessuna delle parole chiave riservate di CoffeeScript come nome di variabile. Queste parole chiave sono menzionate nella sezione successiva. Ad esempio, i nomi delle variabili break o booleane non sono validi.
I nomi delle variabili CoffeeScript non devono iniziare con un numero (0-9). Devono iniziare con una lettera o un trattino basso. Ad esempio, 123test è un nome di variabile non valido ma _123test è uno valido.
I nomi delle variabili CoffeeScript fanno distinzione tra maiuscole e minuscole. Per esempio,Name e name sono due variabili diverse.