我在HTML中的脚本标记中初始化了一些全局变量:
<script>
count = 0;
window.count2 = 0;
var count3 = 0;
</script>
Run Code Online (Sandbox Code Playgroud)
在app.js,我订阅观察他们的变化:
let subscription = bindingEngine.propertyObserver(window, 'count')
.subscribe((newValue, oldValue) => console.log('Global count: ', newValue, oldValue));
let subscription2 = bindingEngine.propertyObserver(window, 'count2')
.subscribe((newValue, oldValue) => console.log('window.count2: ', newValue, oldValue));
let subscription3 = bindingEngine.propertyObserver(window, 'count3')
.subscribe((newValue, oldValue) => console.log('Global count3: ', newValue, oldValue));
Run Code Online (Sandbox Code Playgroud)
然后我改变这样的值:
change() {
count++;
count2++;
count3++;
}
Run Code Online (Sandbox Code Playgroud)
只有count&& count2在控制台中被观察到:
Global count: 1 0
window.count2: 1 0
Run Code Online (Sandbox Code Playgroud)
这是GistRun
问题:为什么count3不能观察到?我认为3种形式的初始化是等价的.