Défi récapitulatif
Fait partie de la section Programmation Orientée Objet du Journey JavaScript de Coddy — leçon 34 sur 56.
Défi
On vous donne une classe ShoppingCart. Votre tâche consiste à ajouter :
- Propriétés statiques :
taxRatedéfini sur0.08(8 % de taxe)currencydéfini sur"USD"
- Méthode statique :
calculateTax(amount)qui retourneamount * taxRate
Essayez vous-même
import { ShoppingCart } from './shoppingCart.js';
// Code de test - ne pas modifier
console.log(ShoppingCart.currency); // Devrait afficher "USD"
console.log(ShoppingCart.calculateTax(100)); // Devrait afficher 8 (100 * 0.08)
const cart = new ShoppingCart();
console.log(cart.addItem(25)); // Devrait afficher 25
console.log(cart.addItem(50)); // Devrait afficher 75
console.log(ShoppingCart.calculateTax(cart.total)); // Devrait afficher 6 (75 * 0.08)
Toutes les leçons de Programmation Orientée Objet
1Objets et le mot-clé this
Révision rapide : Les objetsAjouter des méthodes aux objetsComprendre le mot-clé thisFonctions constructeursLe mot-clé newDéfi récapitulatif7L'héritage et le mot-clé extends
L'héritageLa relation « est un »Le mot-clé extendsLa méthode super()Hériter des propriétés et méthodesDéfi récapitulatif10Polymorphisme
Qu'est-ce que le polymorphisme ?Redéfinition de méthodes héritéesUtiliser superDéfi récapitulatif13Composition vs Héritage
Les relations « has-a » vs « is-a »Les limites de l'héritage profondConstruction d'objets2Organisation du code
Qu'est-ce qu'un module ?Exporter avec exportImporter avec importExports par défaut vs nommés5Encapsulation & Accès
EncapsulationChamps de classe publics et privésMéthodes privéesDéfi récapitulatif8Organisation du code POO
Organiser les classes en modules11Projet : Un moteur de rendu de formes
Configuration : Classe Shape et ExportationHéritage de la classe Circle14Système de gestion de bibliothèque
Conception de la bibliothèqueClasse Book avec composition3Classes et Objets
Qu'est-ce qu'une classe ?Créer des instancesPropriétés et méthodesDéfi récapitulatif9Méthodes et propriétés statiques
Niveau classe vs Niveau instancePropriétés statiquesMéthodes utilitaires statiquesDéfi récapitulatif