JS 如何监听一个变量的变化

时间:2018-09-28 17:10:11   收藏:0   阅读:569

基于get 和 set

var a = { watchValue:0 };
var lastTimeValue=a.watchValue;
Object.defineProperty(a, ‘watchValue‘, {
  get: function() {
    console.log(‘get:‘ + watchValue);
    return watchValue;
  },
  set: function(value) {
    watchValue = value;
    if(lastTimeValue!=watchValue){
        lastTimeValue=watchValue;
        console.log(‘value changed!! set: ‘ + watchValue);
    }
  }
});

结果如下:

a.watchValue = 2; // value changed!! set: 2
console.log(a.watchValue);// get:2

原文:https://www.cnblogs.com/jimaww/p/9719634.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!