JavaScript 进阶 32 - Proxy 代理

本文详细介绍了JavaScript中的Proxy构造函数,用于创建对象的代理,从而进行访问控制和增强Object的基本操作。通过示例展示了如何使用Proxy进行属性赋值、数据更新的监测,包括对数组操作的处理。同时对比了Proxy与Object.defineProperty()的区别,强调了Proxy在数据监测和性能上的优势,但注意其兼容性问题。
摘要由CSDN通过智能技术生成

 

Proxy();代理,

代理是指:用于描述某人或某事代表他人行事

在ES6中, Proxy() 代理的是 object。来进行访问控制和增加功能、修改Object的基本操作。基本操作:比如属性的调用、给属性赋值、删除属性、方法调用等等。

Proxy();可以理解成:创建一个对象的代理。可以对JavaScript中的对象的基本操作 进行自定义。然后用 自定义的操作 覆盖 其对象的基本操作。换句话说,就是 一个对象 去执行 某个基本操作时, 其执行的过程和结果 都是 自己自定义的。

基础语法:

let proxy = new Proxy(obj,{
    get(target,key){
        return target[key];
    },
    set(target,key,value){
        target[key] = value
    }
})

Proxy是个构造函数,接收两个参数:

  • 第一个参数 target:目标对象,即给哪个对象做代理,
  • 第二个参数:配置对象; get()和set()方法接收的参数如下:
    • target:目标对象
    • key:给什么属性
    • key:给什么属性
    • value:设置什么值

来看个实例代码:

let obj = {
    name:'tom',
    aget:33,
    mess:{
        like:'爬山'
    }
};
//后面的实例 都是代理的此对象

【 例 1 】:我们先将 target ,key, value 的值打印出来看看什么


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值