JavaScript中任何内容的Setter
我有一个对象,我们叫它JavaScript中任何内容的Setter,javascript,setter,Javascript,Setter,我有一个对象,我们叫它obj,它看起来像这样: const obj = { key: "value" } 现在我想在设置属性时做一些事情。我听说了二传, 我可以通过以下方式使用: const obj = { set key(e) { console.log("Property key has been set!") } } 但我想这样做,为了任何财产。。。与“键”类似,它将用于任何对象,例如: obj.SomeKey = "value" 应记录“已设置属性键!”
obj
,它看起来像这样:
const obj = {
key: "value"
}
现在我想在设置属性时做一些事情。我听说了二传,
我可以通过以下方式使用:
const obj = {
set key(e) {
console.log("Property key has been set!")
}
}
但我想这样做,为了任何财产。。。与“键”类似,它将用于任何对象,例如:
obj.SomeKey = "value"
应记录“已设置属性键!”
这对任何财产都是一样的。。。
JavaScript中有没有实现这一点的方法?谢谢您可以创建一个ES6,它允许您修改set
方法,如下所示:
const obj={
关键词:“价值”
};
const objProxy=新代理(obj{
集合:(物体、道具、v)=>{
obj[prop]=v;
log(“做某事”);
}
});
objProxy.name=“foo”;
console.log(objProxy);//代理现在具有name属性
console.log(obj);//原始对象也是如此
请继续阅读!