码迷,mamicode.com
首页 > 其他好文 > 详细

Reflect

时间:2020-09-23 23:32:40      阅读:42      评论:0      收藏:0      [点我收藏+]

标签:set   type   style   desc   ISE   obj   参数   setter   new   

1、让属于语言内部的方法,写在Relect,整理。

2、让命令形式改为方法的形式,如dele obj.name(Reflect.deleteProperty(obj,name))、name in obj(Relect.has(obj,name))。

3、让返回合理些Object.defineProperty(obj, name, desc)在无法定义属性时,会抛出一个错误,而Reflect.defineProperty(obj, name, desc)则会返回false。

4、让Reflect跟proxy一一对应。

Reflect.set(obj,name,value,receiver) receiver可省略,一般用在setter函数中绑定this =>1 

Reflect.get(obj,name,value,receiver)receiver可省略,一般用在getter函数中绑定this =>2 如果没有属性就返回undefined

Reflect.has(obj,name)对应 name in obj =>3 true false

Reflect.deleProperty(obj,name) 删除属性  dele obj.name =>4 如果删除成功,或者被删除的属性不存在,返回true,否则flase

Reflect.setPrototypeOf(obj,obj._pro_) =>5

Reflect.setPrototypeOf(obj) =>6

Reflect.getOwnPropertyDescriptor(obj, name) =>7

Reflect.defineProperty(obj, name, desc) =>8

Reflect.ownKeys(obj) 返回的是hasOwnProperty和symbol中属性 =>9

Reflect.isExtensiable(obj) 返回是否可扩展 true fales =>10

Reflect.preventExtension(obj)然obj不可扩展 =>11

Reflect.construct(obj,参数) 原来 new obj(参数) =>12

Reflect.apply(func, thisArg, args)

Reflect.apply方法等同于Function.prototype.apply.call(func, thisArg, args),用于绑定this对象后执行给定函数。

Reflect.getOwnPropertyDescriptor()

如果obj不是对象会报错的都会

Reflect

标签:set   type   style   desc   ISE   obj   参数   setter   new   

原文地址:https://www.cnblogs.com/smileguoge/p/13703050.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!