Proxy JS标准内置对象
const p = new Proxy(target, handler)
创建一个对象的代理:
let obj = { a: { b: { c: 1 } } } let proxy = new Proxy(obj, {}) console.log(proxy);
浏览器打印
Object.defineProperty()
直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。
Object.defineProperty(obj, prop, descriptor)
重写一个对象:
const object1 = {}; function df(o) { Object.keys(o).forEach(key => { Object.defineProperty(object1, key, { set() { object1[key] = obj[key]; if (typeof obj[key] === 'object') { df(obj[key]) } } }) }) return o } let proxy1 = df(obj) console.log(proxy1)
浏览器打印:
标签:obj,df,Object,Proxy,key,defineProperty From: https://www.cnblogs.com/Merrys/p/16972179.html