JavaScript 面试题
目录

JavaScript 中如何删除对象属性?

· 约 3 分钟读完 · 第 319 / 507 章

推荐答案

在 JavaScript 中,可以使用 delete 操作符来删除对象的属性。以下是删除对象属性的示例代码:

本题详细解读

1. delete 操作符的作用

delete 操作符用于删除对象的属性。如果删除成功,delete 会返回 true,否则返回 false。需要注意的是,delete 只能删除对象自身的属性,不能删除继承的属性。

2. 删除对象属性的语法

或者:

3. 注意事项

  • 不可配置的属性:如果对象的属性被设置为不可配置(configurable: false),则无法使用 delete 删除该属性。尝试删除不可配置的属性会返回 false。

  • 全局变量和函数:delete 不能删除全局变量或函数。尝试删除全局变量或函数会返回 false。

  • 数组元素:delete 可以删除数组元素,但不会改变数组的长度,删除的元素会变成 undefined。

4. 替代方案

如果你希望删除属性并返回一个新的对象(不修改原对象),可以使用对象解构:

这种方法不会修改原对象 obj,而是创建了一个新的对象 rest,其中不包含 age 属性。