creare un array con dati json

fradamma

Utente Attivo
28 Set 2012
93
0
0
Buongiorno,
per prima cosa mi scuso per l'ignoranza ma studio javascript da pochissimo.

ho un $.each del genere:

Codice:
	$.each(myJson, function(k,v){ //scorro il mio file Json
						
		indici_Id = v.id; // dove "id" sono un insieme di valori che mi restituiscono dei numeri, appundo degli "id"
                console.log(indici_Id); // 1,2, 3, 4, 5, ecc....
	})
ho bisogno di creare all'interno dell each un array contenente tutti gli id e trasportarlo fuori dal ciclo. COme posso fare?
Grazie
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, puoi fare cosi
Codice:
var id_array = new Array();

$.each(myJson, function(k,v){ 						
    id_array[k] = v.id;  
});
 

fradamma

Utente Attivo
28 Set 2012
93
0
0
Ciao Criric!
grazie...
io però ho bisogno di utilizzare l'array risultante "id_array" (che in questo caso sarà un array di numeri..1,2,3,4,ecc) anche al di fuori dell'each (precisamente all'interno di un'altro each.

Ti spiego meglio il mio problema con il codice:

Avrò 3 each tutti sullo stesso livello :

Codice:
$.each(myJson, function(k,v){ 						
    id_array1[k] = v.id;  
});

$.each(myJson, function(a,b){ 						
     id_array2[a] = b.id;  // ...ricavo l'array nuovo ripercorrendo le tue indicazioni datemi per il primo 
});

$.each(myJson, function(k,v){ 						
   if( id_array1 == id_array2 )
   {
       stampa una tabella
    }
});
Dunque, per farla breve: con il primo each mi ricavo un array di id in una data posizione del json, con il secondo each mi ricavo un secondo array di id in una posizione del json DIVERSA dalla prima (questi due array dovrebbero corrispondere perfettamente). Infine, nel terzo each inserisco un If perchè se ogni valore dell'array1 è uguale al valore corrispondende dell'array2 devo stampare dei dati, in caso contrario no. E' un meccanismo alquanto articolato....puoi darmi una mano? Grazie tante!
 

fradamma

Utente Attivo
28 Set 2012
93
0
0
inoltre, se scrivo: "var id_array = new Array();" con "var" non rendo la variabile locale ed inutilizzabile in altro ciclo? o mi sbaglio?