Робота з об'єктами JavaScript

Мета роботи: отримати навички створення об'єктів, доступу до полів та методів, ознайомитись із прототипним успадкуванням.

Теоретична частина

Для виконання лабораторної роботи надано наступні відомості

Практична частина

Завдання 1. Відповідно до свого варіанта визначити об'єкт, із заданими полями та методом виведення інформації про об'єкт.

Об'єкт створюється за допомогою літералу.

  1. Процесор
    1. Тактова частота
    2. Кількість ядер
    3. Розрядність процесора
  2. Пам'ять
    1. Тип пам'яті
    2. Швидкість читання
    3. Швидкість запису
  3. Корпус
    1. Потужність блоку живлення корпуси
    2. Форм-фактор материнської плати
    3. Охолодження
  4. Твердий диск
    1. Тип накопичувача
    2. Об'єм
    3. Інтерфейс
    4. Швидкість обертання шпинделя
  5. SSD диск
    1. Об'єм Інтерфейс
    2. Тип мікросхем
    3. Flash
    4. Контролер
  6. Оптичний носій
    1. Тип установки
    2. Тип
    3. Інтерфейс підключення
    4. Максимальна швидкість читання
  7. Клавіатура
    1. Тип
    2. Технологія перемикання
    3. Призначення
    4. Інтерфейс підключення
  8. Миша
    1. Інтерфейс підключення
    2. Призначення
    3. Тип сенсора
    4. Модель сенсора
    5. Максимальна роздільна здатність сенсора
  9. Звукова карта
    1. Аналогові виходи
    2. Аналогові входи
    3. Мікрофонні входи
    4. Тип
    5. Кількість каналів
    6. Інтерфейс підключення
  10. Відеокарта
    1. Інтерфейс
    2. Виробник графічного процесора
    3. Графічний процесор
    4. Частота графічного процесора
    5. Відеопам'ять (обсяг)
  11. Блок безперебійного
    1. Тип AVR
    2. Потужність
    3. Час автономного живлення
  12. Планшет
    1. Діагональ екрану
    2. Процесор
    3. Роздільна здатність екрана
    4. Операційна система
    5. Оперативна пам'ять
    6. Внутрішня пам'ять
  13. Електронна книга
    1. Розмір екрана
    2. Тип екрану
    3. Роздільна здатність екрана
    4. Флеш-пам'ять
  14. Акустика
    1. Тип
    2. Підсилювач
    3. Максимальна потужність
    4. Матеріал корпусу
  15. Фітнес-браслет
    1. Об'єм оперативної пам'яті
    2. Підтримувані платформи
    3. Датчики
  16. Акумулятор
    1. Тип акумулятора
    2. Ємність
    3. Полярність
    4. Напруга
  17. Мобільний телефон
    1. Тип
    2. Операційна система
    3. Розмір екрану
    4. Роздільна здатність екрана
    5. Оперативна пам'ять
  18. Радіоприймач
    1. Живлення
    2. Тип
    3. Вихідна потужність звуку
    4. Тип тюнера
    5. Модуляція
  19. Телевізор
    1. Тип
    2. Діагональ
    3. Частота
    4. Дозвіл
  20. Фотоапарат
    1. Тип камери
    2. Тип матриці
    3. Розмір екрана
    4. Кількість точок матриці
    5. Максимальна роздільна здатність відео
  21. Відеокамера
    1. Роздільна здатність відеозйомки
    2. Формат стиснення відео
    3. Розмір екрана
    4. Кількість точок матриці
  22. Принтер
    1. Тип
    2. Формат
    3. Кількість кольорів
    4. Технологія друку
    5. Швидкість друку
  23. Ігрова приставка
    1. Тип
    2. Об'єм накопичувача
    3. Максимальна роздільна здатність в іграх
  24. IP камера
    1. Тип матриці
    2. Конструкція
    3. Стандарти безпровідного зв'язку
    4. Мережний інтерфейс
  25. Портативна рація
    1. Стандарт
    2. Кількість каналів
    3. Дальність радіозв'язку
    4. Кількість радіостанцій у комплекті
  26. Модем
    1. Тип
    2. Інтерфейс підключення
    3. Підтримка мобільного зв'язку
    4. Підтримка карт пам'яті
  27. Монітор
    1. Діагональ
    2. Співвідношення сторін
    3. Роздільна здатність
    4. Частота оновлення екрану
  28. Велосипед
    1. Клас
    2. Матеріал рами
    3. Тип трансмісії
    4. Діаметр коліс
  29. Мікрохвильова піч
    1. Тип
    2. Об'єм
    3. Споживана потужність
    4. Вихідна потужність мікрохвиль
  30. Пральна машина
    1. Завантаження білизни
    2. Максимальне завантаження
    3. Клас енергоспоживання
    4. Клас прання
    5. Максимальна швидкість віджиму
Завдання 2. Написати функцію-конструктор для створення об'єктів відповідно до варіанта.

Визначити гетери та сеттери для отримання доступу до властивостей. У прототип об'єктів додати властивість - дата виходу ринку, метод відображення інформації про об'єкт.

Завдання 3. Описати клас, який описує об'єкти відповідно до варіанта.

Передбачити конструктор з параметрами, гетери та сеттери для отримання доступу до властивостей, метод відображення інформації про об'єкт.

Завдання 4. Описати клас, що є спадкоємцем класу завдання 3.

У похідному класі додати властивості: дата виходу ринку, вартість. Перевизначити метод виведення інформації про об'єкт.

Завдання 5. За підсумками розробленого класу завдання 4 створити масив об'єктів.

Визначити об'єкти з максимальною та мінімальною вартістю, сумарну вартість усіх об'єктів, обчислити середню вартість об'єкта, підрахувати кількість об'єктів із вартістю вище за середню. Для виконання завдання використовувати вбудовані методи масивів та об'єкт Math.

Контрольні питання

  1. Як створити об'єкт у JavaScript?
  2. Що таке функція конструктор?
  3. Що таке Prototype?
  4. Як створити метод об'єкта?
  5. Як змінити властивості об'єкта?
  6. Як визначити власні властивості об'єкта?
  7. Як додати, видалити властивість?
  8. Як визначити клас?
  9. Як визначити клас, успадкований від заданого?
  10. Як звернутися до функціоналу базового класу з похідного?

Зміст звіту

  1. Назва та мета виконання лабораторної роботи.
  2. Код власних скриптів до кожного завдання.
  3. У висновку оцінити можливості мови JavaScript для виконання подібних завдань.
  4. Файли з власними скриптами і відповідними назвами покласти на диск в окрему папку ExampleJS (всередині вашої папки).