- 外部访问私有属性
const _radius = new WeakMap()
class Circle {
constructor(radius) {
_radius.set(this, radius)
}
getRadius() {
return _radius.get(this)
}
}
const c = new Circle(1)
- es6语法,实现想访问属性一样访问
const _radius = new WeakMap()
class Circle {
constructor(radius) {
_radius.set(this, radius)
}
get radius() {
return _radius.get(this)
}
}
const c = new Circle(1)
- 设置属性
const _radius = new WeakMap()
class Circle {
constructor(radius) {
_radius.set(this, radius)
}
get radius() {
return _radius.get(this)
}
set radius(value) {
_radius.set(this, value)
}
}
const c = new Circle(1)