假设我们有以下代码:
const _timeStamp = new WeakMap();
const _running = new WeakMap();
export class Stopwatch {
constructor() {
_timeStamp.set(this, 0);
_running.set(this, false);
}
start() {
// start stopwatch
_running.set(this, true)
_timeStamp.set(this, Date.now())
}
stop() {
// stop stopwatch
_running.set(this, false);
return (Date.now() - _timeStamp.get(this))/1000
}
}
在此示例中,我们尝试使用弱图向最终用户隐藏一些信息。根据调用的方法,我们更改两个弱图中的值。当我们重新分配变量时,我们改变了状态。
let x = 0;
x = 10
编辑:
但是,在更新弱图中的值时,我们不会像在变量的情况下那样改变状态吗?使用需要可重写的私有道具时,“最佳实践”是什么?
任何澄清都非常感谢!