Javascript language

Javascript basics

I commenti

I commenti sono sempre preceduti da due slash //. L’interprete Javascript ignorerà tutto ciò che compare dopo questi due caratteri fino alla fine della riga.

1
// Questo è un commento

Definizione di variabile

Una variabile è definita con la parola riservata var seguita da un nome che la indentifica. Per esempio: var n=1;. Il tipo della variabile è invece dedotto autonomamente dall’interprete in base al contesto di utilizzo o all’inizializzazione.  Per avere il tipo numerico basta assegnare un valore numerico alla variabile. Una variabile non inizializzata ha valore indefinito: var x;

La ridichiarazione di una variabile non le assegna il valore indefinito. Diverse variabili possono essere definite con una sola parola chiave var purché siano separate da una virgola:

1
var n=1, x, string="Hello";

Tipi di dato fondamentali

Ci sono tre tipi di dato elementari per memorizzare i valori: stringa, numero, booleano. Due tipi di dato speciali rappresentano il valore nullo e indefinito. Ogni altro valore è rappresentato da un oggetto.

La stringa

Il tipo di dato stringa è rappresentato da un insieme di caratteri racchiusi fra apici doppi o singoli.

1
var string="Hello World!";

Il numero

Non esistono selettori specifici per i dati numerici: virgola mobile, intero, ecc. Per esempio si usa il punto . per definire un valore in virgola mobile: var f=3.14;. Se la prima cifra è 0 il valore è considerato ottale: var num=012;. Usando 0x si ottiene un valore esadecimale var t=0xa2;.

Booleano

Le parole riservate true e false creano valori booleani: var a=true;

Indefinito e nullo

Il tipo indefinito può assumere solo il valore undefined che è anche quello predefinito per tutte le dichiarazioni di variabili.

1
2
var a; // la variabile è inizializzata con il valore undefined
var a = undefined;

Anche il tipo nullo ammette solo un valore, cioè null. È raramente utile ma può essere passato alle funzioni che prendono tante variabili come argomenti e si desidera ometterne alcune, oppure quando si inizializza una variabile:

1
2
var n = null;
n = dosomething('hello', null, 'world');

Gli array

In Javascript gli array sono oggetti che possono contenere più valori alla volta, in genere correlati fra loro. Per creare un oggetto di questo tipo, i valori devono essere specificati fra parentesi quadre

1
var prime=[1, 2, 3, 5, 7]; // array di 5 elementi

Un altro metodo per dichiarare un array prevede l’uso della parola riservata new e il costruttore Array

1
var prime = new Array(1, 2, 3, 5, 7);

Gli array sono oggetti

1
typeof prime; // return "object"

È consentito raggruppare valori di tipi diversi in un array, compresi altri array.

1
2
var mix = [1, "string", false, null, undefined, prime ];
// mix contiene ora [1, "string", false, null, undefined, [1, 2, 3, 5, 7]]

Essendo oggetti, gli array hanno proprietà e metodi:

1
2
mix.length; // restituisce 6
mix.push(null); // aggiunge in coda un altro elemento null

Per aggiungere un elemento si usa il metodo push oppure si specifica l’indice del nuovo elemento:

1
2
3
mix[6]="Hello"; // aggiunge una stringa, settimo elemento dell'array.
mix[mix.length]=8; // aggiunge il valore 8
mix.push('movie', 'sound', 'game'); // aggiunge tre nuovi elementi all'array mix.

L’accesso all’elemento di un array

1
var a = mix[2]; // la variabile a è false

Ulteriori metodi disponibili con l’oggetto array: pop, shift, unshift, indexOf. Per gli esempi completi si veda Array, MDN Web Docs.
La dimensione di un array è dinamica. La proprietà Length è associata alla lunghezza dell’array.

1
2
3
4
5
var arr = ['a', 2, 'b', null, 'hello'];
console.log(arr.length); // stampa 5
arr[6] = 'world';
console.log(arr.length); // stampa 7
arr.length = 10; // incrementa la dimensione di 3 elementi.

Array associativo

Javascript non ha la struttura dati array associativo (hash) che usa etichette come indici per gli elementi. Gli array hanno sempre indici numerici. Per aggirare il problema è possibile impiegare un oggetto standard che tuttavia ha metodi e proprietà diversi da quelli dell’oggetto array (push, length, sort, ecc.).

1
var hash = {a: 1, b: 2, c: 3};

Nell’oggetto standard le proprietà sono etichette che si comportano come variabili. Per aggiungere elementi all’array associativo si usa l’operatore . punto oppure le parentesi quadre.

1
2
hash.d = 5; // viene aggiunta la proprietà d contenente il valore 5
hash["d"] = 5; // gli apici doppi sono obbligatori

L’operatore . punto è valido anche per accedere a un elemento dell’oggetto

1
 var temp = hash.c; // viene assegnato il valore 3 a temp

Come alternativa al punto, l’accesso è fatto con le parentesi quadre e la proprietà specificata tra virgolette

1
 var temp = hash["c"]; // viene assegnato il valore 3 a temp

Per rimuovere le proprietà si usa invece l’operatore delete

1
delete hash.b; // la proprietà b è eliminata dall'oggetto

Condizioni

Le condizioni in javascript si creano con il costrutto if…else comune a molti linguaggi di programmazione.  Le condizioni permettono di compiere determinate azioni se si verificano o no alcune situazioni. La sintassi per costruire un blocco if…else è equivalente a quella degli altri linguaggi: la parola riservata if è seguita dalla condizione racchiusa fra parentesi tonde; i comandi da eseguire al verificarsi della condizione sono specificati fra parentesi graffe e formano un blocco di istruzioni.

1
2
3
4
5
6
7
8
var a = true, b;
if ( a === "test" ) {
    alert("test");
} else if ( b === undefined ) {
    b = 5;
} else {
    a = "test";
}

Operatore ternario

L’operatore condizionale ternario prende 3 argomenti.

1
2
var a = false;
var b =

Just another WordPress *Development* site