如何监听 js 中变量的变化
展开全部
一种简单的方法
var EventEmitter = require('events');
var util = require('util');
function Person(name) {
var name=name;
this.getName=function () {
return name;
}
this.setName=function (newName) {
if(newName!==name){
var oldName=name;
name=newName;
this.emit("valueChange",{
key:'name',
oldVal:oldName,
newVal:newName
})
}
}
}
util.inherits(Person, EventEmitter);
var person=new Person("Zhihu");
person.on('valueChange',function(event){
//doSomeThing
})
EventEmitter和util.inherits的具体实现。
var EventEmitter = require('events');
var util = require('util');
function Person(name) {
var name=name;
this.getName=function () {
return name;
}
this.setName=function (newName) {
if(newName!==name){
var oldName=name;
name=newName;
this.emit("valueChange",{
key:'name',
oldVal:oldName,
newVal:newName
})
}
}
}
util.inherits(Person, EventEmitter);
var person=new Person("Zhihu");
person.on('valueChange',function(event){
//doSomeThing
})
EventEmitter和util.inherits的具体实现。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询