javascript - 如何找出javascript对象关联的变量名

标签 javascript javascript-objects objectname

我想了解如何获取对象声明中关联的变量名称。 通过一个例子更容易描述这个问题,所以:

function MyObject (){

    this.NeedToKnow = "";

    this.getLink = function() {
        html = '<a href="javascipt:' +this.NeedToKnow+'.doIt(passVal) ">M</a>';
        return html;
    }

    this.doIt = function(passVal) {
        //do stuff
    }
}

varNeedToKnow = new MyObject ();
var html = varNeedToKnow .getLink();

所以我的问题是,如何找出“varNeedToKnow”来填充对象内的 this.NeedToKnow ?

这可能吗?

最佳答案

我的处理方法略有不同,您可以更直接地与 DOM/事件处理程序交互。这样做就不需要在对象范围之外公开函数名称,因为单击事件现在直接绑定(bind)到函数本身。

function MyObject (){

    this.getLink = function() {
        var a = document.createElement('a');
        a.innerHTML = 'MyLink';

        if(a.addEventListener) {
            a.addEventListener('click', this.doStuff, false);
        } else {
            a.attachEvent('onclick', this.doStuff);
        }

        return a;
    };

    this.doStuff = function(passVal) {
        //do stuff
    };
}

var varNeedToKnow = new MyObject ();
var element = varNeedToKnow.getLink();
//element now contains an actual DOM element with a click event bound to your doStuff function

关于javascript - 如何找出javascript对象关联的变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25864155/

相关文章:

javascript - Polymer iron-ajax 和异步请求(etag 同步和响应处理)

javascript - 无法在 Cypress 中使用skip-test作为自定义命令

javascript - 在像 jQuery 这样的 Javascript 对象中启用可链接性

javascript - 如何从 javascript 中的变量创建对象属性?

javascript - 如何轻松访问嵌套对象中的属性?

javascript - 如何访问javaScript对象属性NAME而不是VALUE

javascript - 为什么在用作选择器的类或 ID 已从 HTML 中删除后仍会调用 jQuery 函数?

c++ - 我将如何使用调用相同构造函数的静态成员函数创建两个矩阵(所有值为 Ones 或值 Zeros)?

java - 当对象名使用通配符时无法访问 mbean

javascript - 如何在警报中显示外部 JavaScript 代码?