View Full Version : [JS] Variabili
ho un problema... devo passare o meglio usare una variabile fuori dalla classe e modificarla.
Come faccio a tenerla aggiornata senza fare mille return nelle funzioni? riesco a passare il "puntatore" e lavorare su quella variabile?
Aiuto!!!
nessuno???
mi spiego meglio
[CODE]
var test = new Array();
function aa() {
oggetto = new Oggetto();
oggetto.operazione();
( ora devo passare una variabile che usa nella funziona operazione a "test" )
}
[0/CODE]
è possibile?
AlexGatti
24-08-2007, 11:30
nessuno???
mi spiego meglio
var test = new Array();
function aa() {
oggetto = new Oggetto();
oggetto.operazione();
( ora devo passare una variabile che usa nella funziona operazione a "test" )
}
è possibile?
non se capito che devi fare quando dici ora devo passare una variabile che usa nella funziona operazione a "test". Manca il soggetto di "usa".
se devi modificare test o te lo fai passare come parametro oppure se è una (bruttissima) variabile globale, lo puoi modificare direttamente, del tipo:
Test[0]= oggetto;
Allora ho fatto dei test....
Nella mia classe ho creato la variabile this.test e ho cercato di modificarlo in questo metodo:
function InviaRichiesta(type,url,nome) {
this.test[0] = 'aa';
nomeogg = nome;
objHttp.open(type,url,true);
objHttp.onreadystatechange = this.Operazione;
objHttp.send(null);
}
e funziona.. ma nel metodo
function Operazione() {
}
se cerco di modificarlo non riesco... forse questo perchè lo chiamo in questo modo:
objHttp.onreadystatechange = this.Operazione;
Ora io vorrei passare dei dati che leggo in xml con il medoto "operazione" a una variabile della classe... COME FACCIO?
Ho pensato di mettere in un div il contenuto che mi serve.. ma è uno schifo far in questo modo!
AlexGatti
24-08-2007, 14:16
Allora ho fatto dei test....
Nella mia classe ho creato la variabile this.test e ho cercato di modificarlo in questo metodo:
function InviaRichiesta(type,url,nome) {
this.test[0] = 'aa';
nomeogg = nome;
objHttp.open(type,url,true);
objHttp.onreadystatechange = this.Operazione;
objHttp.send(null);
}
e funziona.. ma nel metodo
function Operazione() {
}
se cerco di modificarlo non riesco... forse questo perchè lo chiamo in questo modo:
objHttp.onreadystatechange = this.Operazione;
Ora io vorrei passare dei dati che leggo in xml con il medoto "operazione" a una variabile della classe... COME FACCIO?
Ho pensato di mettere in un div il contenuto che mi serve.. ma è uno schifo far in questo modo!
o passi test come parametro al metodo "operazione"
oppure se test è una variabile globale (è dichiarata fuori dai metodi) allora la puoi utilizzare tranquillamente in operazione.
La riga:
objHttp.onreadystatechange = this.Operazione;
è sbagliata in quanto assegna a onreadystatechange (perchè poi?) il metodo Operazione, il metodo proprio, la funzione, non il risultato che quella funzione ritorna.
voglio dire che dopo quella riga tu potresti chiamare
var obj = objHttp.onreadystatechange();
e avresti lo stesso risultato di
var obj = this.Operazione();
o passi test come parametro al metodo "operazione"
oppure se test è una variabile globale (è dichiarata fuori dai metodi) allora la puoi utilizzare tranquillamente in operazione.
La riga:
objHttp.onreadystatechange = this.Operazione;
è sbagliata in quanto assegna a onreadystatechange (perchè poi?) il metodo Operazione, il metodo proprio, la funzione, non il risultato che quella funzione ritorna.
voglio dire che dopo quella riga tu potresti chiamare
var obj = objHttp.onreadystatechange();
e avresti lo stesso risultato di
var obj = this.Operazione();
se non sbaglio.. mi hanno detto di fare cosi per lo stato della pagina che lo controllo con:
if (objHttp.readyState == 4) {
Ma come ti ho detto ho messo come globale la variabile ma se faccio in quel modo non funziona....
Ora mi spieghi come faccio a passare un parametro al metodo senza fargli fare una copia? MEtto un & prima?
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.