Accedendo riferimento all'oggetto JavaScript dall'interno metodo membro
-
30-09-2019 - |
Domanda
Ok, Im chiedendo se è possibile trasferire il riferimento dell'oggetto alle funzioni. Se non capisce che cosa im cercando di dire, questo aiuto potrebbe:
//so i declare the variable `Editor`
var Editor = new (function(e, d){
this.edit = e;
this.dyna = d;
this.old = ""; //and set these variables inside the object
this.update = function() {
var ta = $(Editor.edit)[0].value, dy = $(Editor.dyna)[0].contentDocument;
//what i want is to be able to refer to the variables (ie. "edit") without using "Editor."
if (Editor.old !== ta) {
$(dy).text(ta);
Editor.old = ta;
}
window.setTimeout(Editor.update, 150);
}
return this;
})("editor","dynamic");
Quindi, per la funzione di aggiornamento, voglio essere in grado di fare qualcosa di simile:
this.update = function() {
var ta = $(edit)[0].value, dy = $(dyna)[0].contentDocument;
if (old !== ta) {
$(dy).text(ta);
old = ta;
}
window.setTimeout(update, 150);
}
E questo mi dà le variabili (Modifica, Dyna, vecchi) dall'oggetto Editor
.
Grazie.
Soluzione
this
all'interno della vostra funzione si riferisce all'oggetto della funzione base anonima si è creato.
Usa this.propertyName
per accedere alle relative proprietà.
var ta = $(this.edit)[0].value, dy = $(this.dyna)[0].contentDocument;
Altri suggerimenti
Perché non stai solo utilizzando il prefisso this
. Così this.edit[0].value
?
Forse mi manca qualcosa, come si è fatto tardi qui ...
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow