MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Reflect.deleteProperty()

这篇翻译不完整。请帮忙从英语翻译这篇文章

静态方法 Reflect.deleteProperty() 允许用于删除属性。它很像 delete operator ,但它是一个函数。

语法

Reflect.deleteProperty(target, propertyKey)

参数

target
删除属性的目标对象。
propertyKey
将被删除的属性的名称。

返回值

Boolean 值表明该属性是否被成功删除。

异常

抛出一个 TypeError,如果目标不是 Object

描述

Reflect.deleteProperty 允许你删除一个对象上的属性。返回一个 Boolean 值表示该属性是否被成功删除。它几乎与非严格的 delete operator 相同。

示例

使用 Reflect.deleteProperty()

var obj = { x: 1, y: 2 };
Reflect.deleteProperty(obj, "x"); // true
obj; // { y: 2 }

var arr = [1, 2, 3, 4, 5];
Reflect.deleteProperty(arr, "3"); // true
arr; // [1, 2, 3, , 5]

// 如果属性不存在,返回 true
Reflect.deleteProperty({}, "foo"); // true

// 如果属性不可配置,返回 false
Reflect.deleteProperty(Object.freeze({foo: 1}), "foo"); // false

规范

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
Reflect.deleteProperty
Standard Initial definition.
ECMAScript 2017 Draft (ECMA-262)
Reflect.deleteProperty
Draft  

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 49 42 (42) 未实现 未实现 10
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 未实现 49 42.0 (42) 未实现 未实现 10

相关链接

文档标签和贡献者

 此页面的贡献者: Hushabyme
 最后编辑者: Hushabyme,