ES6新特性---对象扩展方法Object.assign、Object.is、Proxy与Object.defineProperty

本文介绍了ES6中的对象扩展方法,包括Object.assign用于对象属性复制,Object.is用于判断值是否相等,以及Proxy用于创建对象访问代理,实现更强大的数据监视和响应。Proxy相比defineProperty,能监视更多对象操作,更好地支持数组对象,并以非侵入方式监管对象读写。
摘要由CSDN通过智能技术生成

对象扩展方法Object.assign、Object.is

ES2015中为对象提供了一些扩展方法,我们来看几个最主要的方法。

assign

这个方法可以将多个源对象中的属性复制到一个目标对象中去
如果对象之间存在相同的属性,源对象中的属性会覆盖目标对象中的属性
我们是从源对象中取然后往目标对象里面放
在这里插入图片描述
该方法常用来复制一个对象,除此之外assign方法用来为options去设置默认值也是一个非常常见的应用场景。

is

is方法用来判断两个值是否相等。之前我们常用==运算符和 ===严格相等运算符,==运算符会在比较之前自动转换数据类型。这就导致0和false用双等运算符结果为true是成立的,而三等运算符严格去对比两者之间的类型和数值是否相同。
在这里插入图片描述

Proxy

如果我们想要监视某个对象中的属性读写,可以用Object.defineProperty来捕获属性的读写过程,在vue3.0以前的版本就是使用这样的一个方法来去实现的数据响应从而实现双向数据的绑定,在ES2015中全新增加了一个Proxy的类型,他就是专门用来为对象设置访问代理器的。通过该属性可以轻松监视到对象的读写过程,相比于de

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值