/hexly_1102v_objects_shopping_cart

https://lms.hexly.ru/courses/61/assignments/4840

Primary LanguageJavaScript

hexly_1102v_objects_shopping_cart

https://lms.hexly.ru/courses/61/assignments/4840

Цель

Cоздать функциональную корзину покупок для интернет-магазина, используя ключевое слово this в JavaScript. Это поможет вам понять, как this работает в разных контекстах, особенно в методах объекта.

Задачи:

  1. Создание Объекта Корзины: Создайте объект shoppingCart, который будет содержать свойства, такие как items (массив объектов товаров) и total (общая стоимость товаров в корзине).
  2. Метод Добавления Товара: Реализуйте метод addItem, который позволяет добавлять товары в корзину. Каждый товар должен иметь name, price и quantity. При добавлении товара увеличивайте общую стоимость в total.
  3. Метод Удаления Товара: Реализуйте метод removeItem, который позволит удалять товары из корзины по имени. После удаления обновите общую стоимость.
  4. Метод Обновления Количество Товара: Создайте метод updateQuantity, который изменяет количество определенного товара и обновляет общую стоимость.
  5. Метод Расчёта Общей Стоимости: Разработайте метод calculateTotal, который вычисляет общую стоимость товаров в корзине.
  6. Метод Очистки Корзины: Создайте метод clearCart, который будет очищать все товары в корзине и обнулять общую стоимость.

Требования:

  • Используйте ключевое слово this для доступа и изменения свойств объекта shoppingCart во всех методах.
  • Убедитесь, что ваш код хорошо структурирован и легко читаем.
  • Добавьте комментарии к вашему коду, объясняя, как работают различные части.

Дополнительное Задание:

  • Для тех, кто хочет больше практики, добавьте функциональность скидок в вашу корзину. Создайте метод applyDiscount, который принимает код скидки и применяет скидку к общей стоимости корзины, если код действителен.