ES6 - Reflect.set() 函数
这是一个为属性赋值的函数。它返回一个布尔值,如果更新成功则为 true。
语法
下面提到的语法适用于函数 set(),其中,
target 是要获取要设置的值的属性的名称。
propertyKey 是要获取的属性的名称。
Receiver 是如果遇到 setter,则为对 target 的调用提供的值。这是一个可选参数。
Reflect.set(target, propertyKey, value[,receiver])
示例
以下示例使用反射创建 Student 类的实例,并使用 Reflect.set() 方法设置实例属性的值。
<script> class Student{ constructor(firstName,lastName){ this.firstName = firstName this.lastName = lastName } get fullName(){ return `${this.firstName} : ${this.lastName}` } } const args = ['Tutorials',''] const s1 = Reflect.construct(Student,args) console.log('fullname is ',Reflect.get(s1,'fullName')) //设定值 Reflect.set(s1,'lastName','Point') console.log('fullname is ',Reflect.get(s1,'fullName')) </script>
上述代码的输出将如下所示 −
fullname is Tutorials : fullname is Tutorials : Point