【发布时间】:2017-11-02 09:24:10
【问题描述】:
class Counter {
constructor(initialValue = 0) {
this.value = initialValue;
}
increment() {
this.value += 1;
}
}
const counter = new Counter();
console.log(counter.value); // 0
counter.increment();
console.log(counter.value); // 1
counter.value = 42; // <-- any way to forbid this?
counter.increment();
console.log(counter.value); // 43 :(
【问题讨论】:
-
“仅由自己的方法可变”与“私有到自己的方法,具有公共 getter”相同。相同的解决方案、方法和缺点也适用。
标签: javascript oop ecmascript-6 encapsulation es6-class