JavascriptProva

giovedì 9 febbraio 2012

Codice e alcuni metodi per gli Array

Ora il discorso si fa un po' difficile...

Sarebbe il caso di affrontare i problemi uno alla volta, altrimenti faccio un casino mentale...

Innanzitutto ho trovato una notazione di tipo [] e dei metodi chiamati push e pop.
Tutto questo mi sa di Array...
Andiamo a vedere le proprietà e i metodi degli Array in Javascript...

Sì, come per i comandi Assembly per lo stack, push e pop aggiungono e tolgono dalla coda dell'Array gli elementi.

Provo a crearmi un codice ad hoc...

<script>

var matrice=[]
function aggiungi(nome){
 matrice.push(nome);
}
function elimina(){
 matrice.pop();
}
aggiungi("mario");
aggiungi("pasquale");
aggiungi("antonio");
aggiungi("nicola");
aggiungi("giorgio");
aggiungi("carletto");
for (n=0;n<matrice.length;n++){alert(matrice[n]);}
elimina();
for (n=0;n<matrice.length;n++){alert(matrice[n]);}
elimina();
for (n=0;n<matrice.length;n++){alert(matrice[n]);}
</script>
Sì, funziona come previsto.
Ma i metodi push e pop restituiscono anche dei valori.
Mi faccio un codice che mi aiuta a capire meglio questo:
<script>

var matrice=[]
//il metodo push restituisce la nuova lunghezza dell'Array
alert(matrice.push("mario"));
alert(matrice.push("pasquale"));

//il metodo pop restituisce il nome dell'elemento eliminato dall'Array
alert(matrice.pop());
</script>
Ecco, come mi aspettavo, ottengo prima 1 e poi 2, quindi ottengo il nome "pasquale", che è appunto quello che era in coda ed è stato eliminato.
Quindi si può dichiarare un Array semplicemente con due parentesi quadre!
Questo non lo sapevo...

Dunque la sintassi matrice=[] equivale a quella che già conosco:
<script>

var matrice=new Array();
//il metodo push restituisce la nuova lunghezza dell'Array
alert(matrice.push("mario"));
alert(matrice.push("pasquale"));

//il metodo pop restituisce il nome dell'elemento eliminato dall'Array
alert(matrice.pop());
</script>
o a questa:
<script>

var matrice=new Array("pippo","ciccio","marco","giovanni");
//il metodo push restituisce la nuova lunghezza dell'Array
alert(matrice.push("mario"));
alert(matrice.push("pasquale"));

//il metodo pop restituisce il nome dell'elemento eliminato dall'Array
alert(matrice.pop());
</script>

Nessun commento:

Posta un commento