Avatar ·

¿Cómo eliminar una propiedad de un objeto JavaScript? (delete, spread y otras formas)

¡Hola a todos! Acabo de empezar a aprender JavaScript y me encontré con un problema. Tengo un objeto que contiene datos de un usuario: ```javascript const user = { name: 'Alexey', age: 30, email: 'alex@example.com', password: 'secret123', role: 'admin' }; ``` Necesito eliminar la propiedad `password` de este objeto antes de enviar los datos al cliente (para no exponer la contraseña). Probé asignar `undefined`: ```javascript user.password = undefined; ``` Pero esto no elimina la propiedad — simplemente se vuelve `undefined`. Al serializar a JSON (JSON.stringify) desaparece, pero en el objeto la clave permanece. Y si recorro el objeto con `for...in`, `password` sigue apareciendo. He oído sobre el operador `delete`, pero me preocupa que algunos digan que es lento y no se recomienda usarlo. También he visto en algún lugar la sintaxis con el operador spread para crear un nuevo objeto sin la propiedad. ¿Cuál es la forma correcta y por qué? Por favor, indíquenme.