Reflect.deleteProperty()
The static
Reflect.deleteProperty()
method allows to delete properties. It is like the
delete
operator
as a function.
Syntax
Reflect.deleteProperty(target, propertyKey)
Parameters
target
-
The target object on which to delete the property.
propertyKey
-
The name of the property to be deleted.
Return value
A Boolean
indicating whether or not the property was successfully
deleted.
Exceptions
Description
The Reflect.deleteProperty
method allows you to delete a property on an
object. It returns a Boolean
indicating whether or not the property was
successfully deleted. It is almost identical to the non-strict
delete
operator.
Examples
Using Reflect.deleteProperty()
let obj = { x: 1, y: 2 }
Reflect.deleteProperty(obj, 'x') // true
obj // { y: 2 }
let arr = [1, 2, 3, 4, 5]
Reflect.deleteProperty(arr, '3') // true
arr // [1, 2, 3, undefined, 5]
// Returns true if no such property exists
Reflect.deleteProperty({}, 'foo') // true
// Returns false if a property is unconfigurable
Reflect.deleteProperty(Object.freeze({foo: 1}), 'foo') // false
Specifications
Specification |
---|
ECMAScript Language Specification # sec-reflect.deleteproperty |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
deleteProperty | ChromeFull support49 | EdgeFull support12 | FirefoxFull support42 | Internet ExplorerNo supportNo | OperaFull support36 | SafariFull support10 | WebView AndroidFull support49 | Chrome AndroidFull support49 | Firefox for AndroidFull support42 | Opera AndroidFull support36 | Safari on iOSFull support10 | Samsung InternetFull support5.0 | DenoFull support1.0 | Node.jsFull support6.0.0 |
Legend
- Full support
- Full support
- No support
- No support
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.