编程技术文章分享与教程

网站首页 > 技术文章 正文

碎片时间学编程「292]:如何从 JavaScript 对象中删除属性?

hmc789 2024-11-27 14:46:04 技术文章 2 ℃


在 JavaScript 中处理对象时,您可能会遇到应从对象中完全删除属性的情况。要做到这一点,您可以使用以下几种选择:

将属性设置为未定义

将属性设置为undefined通常不是最佳选择,因为属性本身仍将存在于对象中,尽管undefined它还会改变原始对象,这可能是不希望的。如果您检查属性的值或真实性而不是它的存在,您可能想使用它。

JavaScript


const pet = { species: 'dog', age: 3, name: 'celeste', gender: 'female'};pet.gender = undefined;Object.keys(pet); // ['species', 'age', 'name', 'gender']

使用删除运算符 从技术上讲,运算符 delete 是从 JavaScript 对象中删除属性的正确方法。与前面的选项不同,delete将完全从对象中删除属性,但它仍然会导致突变。


const pet = { species: 'dog', age: 3, name: 'celeste', gender: 'female' }; delete pet.gender; Object.keys(pet); // ['species', 'age', 'name']

使用对象解构 使用扩展语法 ( ...),您可以解构对象并将省略特定属性的对象分配给新对象。这个技巧会派上用场,特别是如果想删除属性的一个子集,并且具有不改变原始对象的额外好处。


const pet = { species: 'dog', age: 3, name: 'celeste', gender: 'female'};const { gender, ...newPet } = pet;Object.keys(pet); // ['species', 'age', 'name', 'gender]Object.keys(newPet); // ['species', 'age', 'name']

更多内容请访问我的网站:https://www.icoderoad.com

Tags:

标签列表
最新留言