ciao a tutti, ho da porvi un quesito che può sembrare stupido, ma è un giorno che ci lavoro sopra e non ne vengo a capo...
Ho creato un oggetto chiamato objPersona così:
function objPersona(a,b,c,d){
this.datiAnagrafici=new objDatiAnagrafici(a);
this.riferimenti=new objRiferimenti(b);
this.titoloStudio=new objTitoloStudio(c);
this.caratteristicheSito=new objCaratteristicheSito(d);
}
dove a,b,c,d sono array e lo instanziato così:
arrDatiAnagr= new Array(10);
arrRif= new Array(10);
arrTit= new Array(16);
arrCar= new Array(13);
persona = new Array(9);
for(i=0;i<persona.length;i++){
persona[i]= new objPersona(arrDatiAnagr,arrRif,arrTit,ar
rCar);
}
gli oggetti objDatiAnagrafici e objRiferimenti ecc. sono di questo tipo:
function objDatiAnagrafici(arrDati){
var nome,cognome,sesso,dataNascita,cittàNasc
ita,provNascita,statoNascita,categoria,d
ataIscrizione,età,codFiscale;
(arrDati[0]==null)? this.nome="non inserito" : this.nome=arrDati[0];
(arrDati[1]==null)? this.cognome="non inserito" : this.cognome=arrDati[1];
(arrDati[2]==null)? this.sesso="non inserito" : this.sesso=arrDati[2];
(arrDati[3]==null)? this.dataNascita="non inserito" : this.dataNascita=arrDati[3];
(arrDati[4]==null)? this.cittàNascita="non inserito" : this.cittàNascita=arrDati[4];
(arrDati[5]==null)? this.provNascita="non inserito" : this.provNascita=arrDati[5];
(arrDati[6]==null)? this.statoNascita="non inserito" : this.statoNascita=arrDati[6];
(arrDati[7]==null)? this.categoria="non inserito" : this.categoria=arrDati[7];
(arrDati
==null)? this.dataIscrizione=gg+"/"+me+"/"+yy : this.dataIscrizione=arrDati
;
(arrDati[9]==null)? this. codFiscale=calcolaCodFiscale(nome,cognom
e,dataNascita,cittàNascita) : this.codFiscale=arrDati[9];
this.età=calcolaEtà(this.dataNascita);
}
gli altri non li inserisco ma si assomigliano.
Così facendo dovrei aver ottenuto un risultato del tipo:
persona.datiAnagrafici.nome
ad esempio di valore undefined (anche tutte le altre proprietà). Ho creato una funzione che desse un valore ad alcune proprietà
function settaValori(nomeOBJ,arr){
nomeOBJ.datiAnagrafici.nome=arr[0];
....
nomeOBJ.DatiAnagrafici.sesso=arr
;
}
come mai richiamandola i valori delle proprietà (ad esempio nome) esistono solo all'interno dell'ultima funzione? io la richiamo così:
settaValori(persona,dati);
quindi gli passo un oggetto. Ho sbagliato a creare gli oggetti?
Sapete aiutarmi?
Grazie e spero di essere stato chiaro.