1//简单对象的属性的变化监控 2//通过setAttr改变属性的值 3 4var o = { 5 'a':2, 6 'b':3 7}; 8function watch(obj, attr, callback){ 9 if(typeof obj.defaultValues == 'undefined'){ 10 obj.defaultValues = {}; 11 for(var p in obj){ 12 if(typeof obj[p] !== 'function' && typeof obj[p] !== 'object') 13 obj.defaultValues[p] = obj[p]; 14 } 15 } 16 if(typeof obj.setAttr == 'undefined'){ 17 obj.setAttr = function(attr, value){ 18 if(this[attr] != value){ 19 this.defaultValues[attr] = this[attr]; 20 this[attr] = value; 21 return callback(this); 22 } 23 return this; 24 }; 25 } 26} 27watch(o, 'a', function(obj){ 28 console.log(obj); 29}); 30o.setAttr('a',4);
Javascript 监听简单对象的属性变化
Stella981
2021-10-11
1214 0 0
点赞
收藏
评论区
加载中...