Геттеры и сеттеры в javascript

Я начинаю с javascript и особенно с шаблона ООП.

Мой вопрос прост. В установщике есть ли способ сохранить одно и то же имя для параметра и переменной частного класса? Я искал везде, но не мог найти никого, кто бы упоминал об этом, просто примеры с разными именами var. Я очень требователен к своему коду, и мне приходится давать ему два разных имени.

Взяв пример из http://ejohn.org/blog/javascript-getters-and-setters/

function Field(val){
    this.value = val;
}
Field.prototype = {
    get value(){
        return this._value;
    },
    set value(val){
        this._value = val;
    }
};

, вы можете видеть, что в установщике параметр имеет значение val, но на самом деле свойство является значением. Поскольку это javascript, я не могу просто сделать this.value=value, потому что «это» сделает его общедоступным. value=value будет ссылаться как на параметр (, так и на очень странный ). Неужели нет способа сделать это? Если нет, есть ли какая-нибудь «лучшая практика» для этой ситуации? Я предполагаю, что подчеркивание может быть допустимым, но я просто придирчив, поэтому просто хочу убедиться, что другого пути нет.

Спасибо!

5
задан martinvigo 28 April 2012 в 00:40
поделиться