从成员方法中访问javascript对象引用

时间:2010-06-26 02:56:07

标签: javascript jquery javascript-objects

好的,我想知道是否可以将对象的引用传递给函数。如果你不明白我想说的话,这可能会有所帮助:

//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");

因此,对于更新功能,我希望能够执行以下操作:

this.update = function() {
    var ta = $(edit)[0].value, dy = $(dyna)[0].contentDocument;
    if (old !== ta) {
        $(dy).text(ta);
        old = ta;
    }
    window.setTimeout(update, 150);
}

它给了我Editor对象的变量(edit,dyna,old)。 感谢。

2 个答案:

答案 0 :(得分:2)

为什么不使用this前缀?那么this.edit[0].value

也许我错过了一些东西,因为它已经很晚了......

答案 1 :(得分:1)

函数内的

this指的是您创建的匿名基函数的对象。

使用this.propertyName访问其属性。

var ta = $(this.edit)[0].value, dy = $(this.dyna)[0].contentDocument;