Skip to content

Latest commit

 

History

History
 
 

objects

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

Домашнее задание к лекции 1.6 «Объекты»

Пришло время сделать работу с товарами в нашем приложении более организованной с использованием объектов.

Перед началом работы

  1. Активируйте строгий режим соответствия.
  2. Скопируйте код ниже и вставьте его в начало своей работы:
var positions = [
  'Телепорт бытовой VZHIH-101',
  'Отвертка ультразвуковая WHO-D',
  'Ховерборд Mattel 2016',
  'Нейтрализатор FLASH black edition',
  'Меч световой FORCE (синий луч)'
];

var prices = [
  10000,
  4800,
  9200,
  2500,
  57000
];

var hitName = positions[2], hitPrice = prices[2];

Задача № 1

В этом месяце мы определили хит продаж. Его название — в переменной hitName, а цена — в hitPrice. Cоздадим и поместим в переменную hit объект со свойствами name и price и выведем информацию о нём в консоль.

Процесс реализации

  1. Создать пустой объект и присвоить его в переменную hit.
  2. Добавить свойства name и price, поместив туда название и цену текущего хита.
  3. Вывести, используя переменную hit, информацию о товаре:
Хит продаж мартобря: <Ховерборд Mattel 2016> цена 9200 Q

Угловые скобки обязательны

Задача № 2

Преобразуем информацию о товарах в массивах positions и prices в массив объектов items с ключами name и price.

Процесс реализации

  1. Создайте пустой массив в переменной items.
  2. Создайте для каждого товара новый объект.
  3. Запишите название товара в свойство name созданного объекта.
  4. Запишите цену товара в свойство price созданного объекта.
  5. Поместите новый объект в массив items.
  6. После того, как все товары преобразованы, выведите, используя массив items, информацию о товаре с индексом 4 в консоль в виде:
Купите Меч световой FORCE (синий луч) по цене 57000 Q

Задача № 3

Для нашего отдела оптовых продаж необходимо реализовать функцию, которая принимает в качестве аргумента объект товара и количество штук и выводит в консоль информацию о его стоимости с учетом объема партии. Скидка от объема определяется следующим образом:

  • До 10 штук — скидка 5 %
  • От 10 до 50 штук — скидка 7 %
  • От 50 до 100 штук — скидка 10 %
  • 100 и более штук — скидка 15 %

Процесс реализации

  1. Создайте функцию showDiscount.
  2. Определите размер скидки.
  3. Вычислите стоимость партии с учетом скидки.
  4. Вычислите выгоду с учетом скидки.
  5. Выведите в консоль информацию о скидке в формате:
Телепорт бытовой VZHIH-101 — стоимость партии из 12 штук 111600 Q (скидка 7 %), ваша выгода 8400 Q!
  1. Вызовите полученную функцию для товара из массива items с индексом 0 и размером партии 12 штук.
  2. И для товара с индексом 3 и размером партии 97 штук.

Задача № 4

На складе всех товаров в достаточном количестве. А вот товаров items[3] осталось всего 4. Решено вести учет их количества, чтобы вовремя узнать, что они закончились.

Процесс реализации

  1. Создайте свойство amount для соответствующего товара, в котором будем хранить остаток.
  2. В качестве значения этого свойства запишите 4.
  3. Создайте функцию updateAmount, которая будет принимать объект товара и расход в штуках, по умолчанию 1.
  4. Проверьте, есть ли у объекта товара свойство amount. Если свойства нет, выходим из функции.
  5. Если свойство amount равно нулю, или расход больше, чем amount, выводим сообщение вида:
Нейтрализатор FLASH black edition закончился на складе.
  1. Если свойство amount больше расхода, уменьшаем на расход значение свойства и выводим сообщение вида:
Нейтрализатор FLASH black edition — остаток 3 шт.
  1. Если свойство amount равно расходу, уменьшаем на расход значение свойства и выводим сообщение вида:
Это был последний Нейтрализатор FLASH black edition, вам повезло!.
  1. Вызываем полученную функцию для товара из массива items с индексом 1 и расходом 17.
  2. Потом для товара с индексом 3 и расходом 3.
  3. И еще один раз для товара с индексом 3, расход не передаем.

Инструкция по выполнению домашнего задания:

  1. Зарегистрируйтесь на сайте Repl.IT.
  2. Перейдите в раздел my repls.
  3. Нажмите кнопку Start coding now!, если приступаете впервые, или New Repl, если у вас уже есть работы.
  4. В списке языков выберите JavaScript.
  5. Код пишите в левой части окна.
  6. Посмотреть результат выполнения файла можно, нажав на кнопку Run. Результат появится в правой части окна.
  7. После окончания работы нажмите кнопку Share и скопируйте ссылку из поля Share link.
  8. В личном кабинете на сайте netology.ru в поле комментария к домашней работе вставьте скопированную ссылку и отправьте работу на проверку.

Никаких файлов прикреплять не нужно.