HighDots Forums  

array e iterazione

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss array e iterazione in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
?manu*
 
Posts: n/a

Default array e iterazione - 10-25-2009 , 09:34 AM






Ho scritto il seguente codice:

var menu = new Object();
menu=["pippo","pluto","topolino"];
mesg="Hello: ";

for(item in menu) {
mesg += menu[item]+" - ";
}
alert(mesg);

Che produce in output: "Hello: pippo - pluto - topolino -".
Non capisco perché nell'iterazione devo mettere "menu[item]", dove mi
sarei aspettato di dover mettere semplicemente "item". Quel "menu" che
ho creato è un semplice array o è qualcosa di più complicato?

E.

Reply With Quote
  #2  
Old   
Cristiano Larghi
 
Posts: n/a

Default Re: array e iterazione - 10-25-2009 , 11:01 AM






Il Sun, 25 Oct 2009 14:34:46 +0100, ?manu* ha scritto:

Quote:
var menu = new Object();
quanto sopra non serve a niente secondo me, dato che subito dopo lo crei
come array ...

Quote:
menu=["pippo","pluto","topolino"];
crei un array di 3 elementi:
https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/
Global_Objects/Array

Quote:
for(item in menu) {
leggi qua:
https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/
Statements/for...in
è sconsigliato usare for ... in con un array.
Io farei semplicemente:
for(var i=0;i<menu.length;i++)
mesg+=menu[i]+" - ";

Reply With Quote
  #3  
Old   
?manu*
 
Posts: n/a

Default Re: array e iterazione - 10-25-2009 , 12:15 PM



Cristiano Larghi ha scritto:
Quote:
è sconsigliato usare for ... in con un array.
Ok. Grazie!

E.

Reply With Quote
  #4  
Old   
Oreste
 
Posts: n/a

Default Re: array e iterazione - 10-25-2009 , 12:55 PM



On 25 Ott, 15:34, ?manu* <paol... (AT) no (DOT) spam.unifi.it> wrote:
Quote:
Ho scritto il seguente codice:

* * *var * * * *menu = new Object();
* * *menu=["pippo","pluto","topolino"];
* * *mesg="Hello: ";

* * *for(item in menu) {
* * * * mesg += menu[item]+" - ";
* * *}
* * *alert(mesg);

Che produce in output: "Hello: pippo - pluto - topolino -".
Non capisco perché nell'iterazione devo mettere "menu[item]", dove mi
sarei aspettato di dover mettere semplicemente "item". Quel "menu" che
ho creato è un semplice array o è qualcosa di più complicato?

E.
È più rapido il seguente:
menu=["pippo","pluto","topolino"];
alert('Hello:'+menu.join(' - ');

Reply With Quote
  #5  
Old   
Fabiano
 
Posts: n/a

Default Re: array e iterazione - 10-25-2009 , 03:46 PM



?manu* ha scritto:
Quote:
for(item in menu) {
mesg += menu[item]+" - ";
}
alert(mesg);

Che produce in output: "Hello: pippo - pluto - topolino -".
Non capisco perché nell'iterazione devo mettere "menu[item]", dove mi
sarei aspettato di dover mettere semplicemente "item". Quel "menu" che
Io sono nuovo di javascript, ma da quel che ho capito item rappresenta
già valori validi per il contatore che corrispondono solo a posizioni
nell'array in cui il dato presente risulta definito (non "undefined").
Forse ti confondi con altri linguaggi (tipo Ocaml) in cui sintassi
simili significano, piglia i dati dell'array uno alla volta e buttali in
item (ti saresti aspettato che le stringhe finissero in item).
Invece item è il contatore.

Se ho sbagliato correggetemi, così mi impruvo + velocemente.
Saluti

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.