Accessing javascript object reference from within member method
-
30-09-2019 - |
Question
Ok, Im wondering if it is possible to transfer the reference of the object to the functions. If you dont understand what im trying to say, this might help:
//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");
So for the update function, I want to be able to do something like:
this.update = function() {
var ta = $(edit)[0].value, dy = $(dyna)[0].contentDocument;
if (old !== ta) {
$(dy).text(ta);
old = ta;
}
window.setTimeout(update, 150);
}
And it gives me the variables(edit, dyna, old) from the Editor
object.
Thanks.
Solution
this
inside your function refers to the object of the anonymous base function you have created.
Use this.propertyName
to access its properties.
var ta = $(this.edit)[0].value, dy = $(this.dyna)[0].contentDocument;
OTHER TIPS
Why aren't you just using the this
prefix. So this.edit[0].value
?
Maybe I am missing something as it's late here...
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow