Cómo eliminar una propiedad de un objeto en JavaScript

En un artículo anterior, vimos cómo agregar una propiedad a un objeto en JavaScript. Pero, ¿qué sucede si desea eliminar una propiedad específica de un objeto?

JavaScript proporciona el delete operador para eliminar una propiedad de un objeto. Si se elimina con éxito, devolverá true , de lo contrario false :

const foods = { burger: '🍔', pizza: '🍕', cake: '🍰' };

// Dot Notatation
delete foods.pizza;

// OR

// Square Bracket Notation
delete foods['pizza'];

console.log(foods);
// { burger: '🍔', cake: '🍰' }

El delete El operador funciona con notación de puntos (. ) así como corchetes ([] ) notación.

Al usar el delete operador, debe considerar los siguientes escenarios:

  • Si la propiedad que intenta eliminar no existe, eliminar no hará nada y simplemente devolverá true .
  • Si existe una propiedad con el mismo nombre en la cadena de prototipos del objeto, luego de la eliminación, el objeto utilizará la propiedad de la cadena de prototipos. En otras palabras, delete solo elimina propiedades de las propiedades propias del objeto y no tiene ningún efecto en las propiedades del prototipo del objeto.
  • Cualquier propiedad declarada con let o const no se pueden eliminar del ámbito en el que se definieron.

Eche un vistazo a este artículo de MDN para obtener más información sobre el delete operador en JavaScript.