Desafío de repaso
Parte de la sección Programación Orientada a Objetos del Journey de JavaScript de Coddy — lección 46 de 56.
Desafío
Se te proporciona una clase UserProfile con la propiedad username ya implementada. Tu tarea es completar la implementación para la propiedad email utilizando getters y setters:
- Añade un getter para
emailque devuelva el valor actual del email - Añade un setter para
emailque:- Valide que el email contenga el carácter '@'
- Si es válido:
- Actualice el email al nuevo valor
- Muestre en consola exactamente:
Email updated to [newEmail]
- Si es inválido:
- Muestre en consola exactamente:
Invalid email! - NO actualice el email
- Muestre en consola exactamente:
Pruébalo tú mismo
import { UserProfile } from './user.js';
// Código de prueba - no modificar
const user = new UserProfile("alice123", "alice@email.com");
user.email = "bob@email.com"; // Válido - debería registrar éxito
user.email = "invalid-email"; // Inválido - debería registrar error
Todas las lecciones de Programación Orientada a Objetos
1Objetos y la palabra clave this
Repaso rápido: ObjetosAgregar métodos a los objetosEntendiendo la palabra clave thisFunciones constructorasLa palabra clave newDesafío de repaso7Herencia y la palabra clave extends
HerenciaLa relación "es-un"La palabra clave extendsEl método super()Heredar propiedades y métodosDesafío de repaso13Composición vs. Herencia
La relación "tiene-un" vs. "es-un"Los límites de la herencia profundaConstrucción de objetos2Organización del código
¿Qué son los módulos?Exportar con exportImportar con importExportaciones por defecto vs. nombradas5Encapsulamiento y Acceso
EncapsulamientoCampos de clase públicos y privadosMétodos privadosDesafío de repaso8Organización del código OOP
Organizar clases en módulos11Proyecto: Un renderizador de figuras
Configuración: Clase Figura y exportaciónHerencia de la clase Círculo14Sistema de Gestión de Biblioteca
Diseño de la BibliotecaClase Libro con Composición9Métodos y propiedades estáticos
Nivel de clase vs. Nivel de instanciaPropiedades estáticasMétodos de utilidad estáticosDesafío de repaso12Getters y Setters
Las palabras clave get y setPropiedades computadasValidación y efectos secundariosDesafío de repaso