Javascript原型语法 - 以下划线开头的变量名称

时间:2015-06-12 04:40:15

标签: javascript prototype

我正在关注一个在线教程并遇到一些javascript代码,我很难理解。在javascript中定义了一个名为Note()的函数。下面是在原型部分添加getter和setter的代码。我不明白为什么变量_id在它前面有下划线?下划线的目的是什么,何时使用?

Note.prototype = {
    get id() {
        if (!("_id" in this))
            this._id = 0;
        return this._id;
    },

    set id(x) {
        this._id = x;
    },

    get text() {
        return this.editField.innerHTML;
    },

    set text(x) {
        this.editField.innerHTML = x;
    }

1 个答案:

答案 0 :(得分:1)

我缩小了问题,我转发了这个问题。

事实证明,' name'和' _name'是两个完全独立的变量。如果我们使用' name'在setter和getter中,它会导致函数的无限递归调用,这就是它无法正常工作的原因。

您可以在此处找到此问题的重新发布以及其他信息。

Javascript getters and setters - recursion issue

相关问题