Reflect.set()
The static Reflect.set()
method works like setting a
property on an object.
Syntax
Reflect.set(target, propertyKey, value)
Reflect.set(target, propertyKey, value, receiver)
Parameters
target
-
The target object on which to set the property.
propertyKey
-
The name of the property to set.
value
-
The value to set.
receiver
Optional-
The value of
this
provided for the call totarget
if a setter is encountered.
Return value
A Boolean
indicating whether or not setting the property was successful.
Exceptions
Description
The Reflect.set
method allows you to set a property on an object. It does
property assignment and is like the
property accessor syntax as a function.
Examples
Using Reflect.set()
// Object
let obj = {}
Reflect.set(obj, 'prop', 'value') // true
obj.prop // "value"
// Array
let arr = ['duck', 'duck', 'duck']
Reflect.set(arr, 2, 'goose') // true
arr[2] // "goose"
// It can truncate an array.
Reflect.set(arr, 'length', 1) // true
arr // ["duck"]
// With just one argument, propertyKey and value are "undefined".
let obj = {}
Reflect.set(obj) // true
Reflect.getOwnPropertyDescriptor(obj, 'undefined')
// { value: undefined, writable: true, enumerable: true, configurable: true }
Specifications
Specification |
---|
ECMAScript Language Specification # sec-reflect.set |
Browser compatibility
BCD tables only load in the browser