📜  删除对象属性 javascript es6 - Javascript (1)

📅  最后修改于: 2023-12-03 14:50:19.060000             🧑  作者: Mango

删除对象属性 JavaScript ES6

在 JavaScript ES6 中,我们可以使用 delete 关键字来删除对象的属性。以下是语法:

delete objectName.propertyName;

其中,objectName 是对象的名称,而 propertyName 是要删除的属性名称。

下面是一个示例,展示了如何使用 delete 来删除对象的属性:

const person = {name: 'John', age: 30, city: 'New York'};
console.log(person); // {name: 'John', age: 30, city: 'New York'}

delete person.city;

console.log(person); // {name: 'John', age: 30}

在上面的示例中,我们通过 delete 删除了 person 对象的 city 属性。

需要注意的是,使用 delete 删除对象的属性具有一定的限制。以下是一些需要注意的细节:

  • 无法删除原型链上的属性
  • 无法删除被定义为 configurable: false 的属性

除了使用 delete 关键字之外,我们还可以使用 Object.assign() 函数来删除对象的属性。以下是一个示例:

const person = {name: 'John', age: 30, city: 'New York'};
console.log(person); // {name: 'John', age: 30, city: 'New York'}

const newPerson = Object.assign({}, person);
delete newPerson.city;

console.log(newPerson); // {name: 'John', age: 30}

在上面的示例中,我们使用 Object.assign() 创建了一个名为 newPerson 的新对象,并从 person 对象复制了所有属性。然后,我们使用 delete 删除了 newPerson 对象的 city 属性。

总之,在 JavaScript ES6 中,我们可以使用 delete 关键字或 Object.assign() 函数来删除对象的属性,但需要注意一些限制和细节。