JavaScript 中如何删除对象属性?

推荐答案

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

-- -------------------- ---- -------
----- --- - -
  ----- --------
  ---- ---
  ----- ---- -----
--

-- -- ----- --
------ --------

----------------- -- --- - ----- -------- ----- ---- ----- -

本题详细解读

1. delete 操作符的作用

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

2. 删除对象属性的语法

或者:

3. 注意事项

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

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

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

4. 替代方案

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

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

纠错
反馈