proxy

2022-06-17  本文已影响0人  青乌

Proxy:

Reflect:

proxy代理对象
var obj = {
    a: 1,
    b: 2
};
var proxy = new Proxy(obj, {
    get: function(target, key, receiver) {
        return Reflect.get(target, key, receiver);
    },
    set: function(target, key, value, receiver) {
        return Reflect.set(target, key, value, receiver);
    }
});
//打印出来 proxy对象
/*
{
  deleteProperty: ƒ deleteProperty(target, key),
  get: ƒ (target, key, receiver),
  has: ƒ has(target, key),
  ownKeys: ƒ ownKeys(target),
  set: ƒ (target, key, value, receiver),
  a: 1,
  b: 2,
  ...
}
*/
proxy代理数组
var arr = [1,2,3]
var proxy = new Proxy(arr, {    
    get: function (target, key, receiver) {
         return Reflect.get(target, key, receiver);
     },
     set(target, key, value, receiver){
         return Reflect.set(target, key, value, receiver);
     }
 })
//打印出来 proxy对象
/*
{
  0: 1,
  1: 2,
  2: 3,
  deleteProperty: ƒ deleteProperty(target, key),
  get: ƒ (target, key, receiver),
  has: ƒ has(target, key),
  ownKeys: ƒ ownKeys(target),
  set: ƒ (target, key, value, receiver),
  ...
}
*/
上一篇 下一篇

猜你喜欢

热点阅读