2017-01-27 8 views
5

私は変更を定期的にチェックする必要があるグローバルスコープの変数を持っています。これは私が簡単なJSでそれを行うだろうかです:変数の変更を検出する方法は?

それは Observablesを使用して行われている方法
let currentValue, oldValue; 

    setInterval(()=>{ 
     if(currentValue != oldValue){ 
      doSomething(); 
     } 
    }, 1000) 

答えて

6
Observable.interval(1000) 
    .map(() => currentValue) 
    .distinctUntilChanged(); 

またはあなたは、必要に応じて、コンパレータ機能を与えることができます:

Observable.interval(1000) 
    .map(() => currentValue) 
    .distinctUntilChanged((oldValue, newValue) => <return true if equal>); 
関連する問題