Desafío de repaso
Parte de la sección Programación Orientada a Objetos del Journey de JavaScript de Coddy — lección 34 de 56.
Desafío
Se te proporciona una clase ShoppingCart. Tu tarea es añadir:
- Propiedades estáticas:
taxRateestablecido en0.08(8% de impuesto)currencyestablecido en"USD"
- Método estático:
calculateTax(amount)que devuelveamount * taxRate
Pruébalo tú mismo
import { ShoppingCart } from './shoppingCart.js';
// Código de prueba - no modificar
console.log(ShoppingCart.currency); // Debería mostrar "USD"
console.log(ShoppingCart.calculateTax(100)); // Debería mostrar 8 (100 * 0.08)
const cart = new ShoppingCart();
console.log(cart.addItem(25)); // Debería mostrar 25
console.log(cart.addItem(50)); // Debería mostrar 75
console.log(ShoppingCart.calculateTax(cart.total)); // Debería mostrar 6 (75 * 0.08)
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 repaso