Valori booleani:
true e false
Funzioni:
Porzione di codice scritta una volta sola e richiamata più volte.
Può ricevere argomenti (parametri)
function square(x)
{
return x*x;
}
Le funzioni sono considerate valori di prima classe cioè come tipi di
dati quindi si possono usare come oggetti.
Se la funzione viene assegnata a una proprietà di un oggetto viene detta
metodo di quell'oggetto.
Leterali funzione ex: var square = new Function("x","return
x*x;"); Viene detta funzione anonima
Oggetti:
Sono una raccolta di blocchi di dati identificabili tramite nomi.
Questi valori sono detti proprietà dell'oggetto.
document.write("esempio");
Gli oggetti in Javascript possono fungere da array associativi, possono
cioè associare valori arbitrari a stringhe arbitrarie.
immagine["larghezza"}
Creazione oggetti:
var o= new Object();
Impostare la proprietà:
o.valore=2.5;
var o={valore:2.5, note:no}
Array
var a= new Array();
a[0]=1;
oppure
var a=[1,"sandro",true,{x:1,y:3}];
Null = Nessun valore
Undefined = Quando una variabile non esiste
VARIABILI
Il JavaScript essendo poco tipicizzato ogni variabile può contenere di
tutto.
Le variabili sono globali mentre quelle definite in una funzione sono
locali alla funzione.
Dichiarare tutte le variabili con var.
Una variabile globale è nascosta alla funzione.
Garbage collection: il javascript libera automaticamente la memoria dalle
variabili non più usate.
ESPRESSIONI E OPERATORI
x+y+z=(x+y)+z Ha l'associatività destrorsa
La divisione per 0 produce + o - Infinity (da Javascript 1.3)
Mentre 0/0 NaN
% operatore modulo: 4.3%2.1= = 0.1
i=0;
j=++i incrementa di 1; //-- decrementa
== true se i due operandi sono uguali ( e se sono di tipo diversi li
rende dello stesso tipo)
I numeri, le stringhe e i valori booleani vengono confrontati per valore.
Gli oggetti, gli array e le funzioni sono confrontati per riferimento.
Se un valore è null e l'altro undefined, sono uguali. "1"==true
sono due elementi uguali.
=== uguali anche ne tipo
!= diverso
"Zoo"<"attenzione" è vera perché la Z è
maiuscola
&& AND logico
|| OR
! NOT
a op= b
a=a op b
operatore condizionale ? : Ex:x>0 ? x*y :
-x*y
void: restituisce sempre undefined
<a href="javascript:void window.open();">apre finestra</a>
ISTRUZIONI
if (espressione)
istruzione
oppure
if (espressione)
{blocco di istruzioni}
else
{altro blocco di istruzioni}
Else if
Switch(n) {
case1:...
break;
case2:
default: se tutti i casi falliscono
}
while (espressione)
istruzione
Do
istruzione
while(espressione);
for (inizializza;test;incremento)
istruzione
for (prop in mio_oggetto)
document.write("nome: "+prop+"; valore:
"+mio_oggetto[prop],"<br>");
}
Break