JS-03. Классы и this
On this page
На этой странице само задание. Конспект к занятию появится ниже, в «Материалах».
Задание
Самостоятельное задание №1. Работа с контекстом объектов
Определите объект car со свойствами brand, model и year. Добавьте метод getDescription(), который возвращает строку "[brand] [model], выпущен в [year] году.". Метод должен использовать this.
Самостоятельное задание №2.1. Создание класса
Определите класс Book со свойствами title, author и year. Метод getSummary() возвращает "[title] была написана [author] в [year] году".
class Book {
// Ваше определение класса
}
// Пример использования
const book1 = new Book("Война и мир", "Лев Толстой", 1869);
console.log(book1.getSummary());Самостоятельное задание №2.2. Наследование классов
Создайте класс Magazine, который наследует Book и добавляет свойство month. Переопределите getSummary() так, чтобы в строке был месяц издания.
P.S. Переопределить - то есть в классе Magazine создать метод getSummary().
// Используйте класс Book из предыдущего задания
class Magazine extends Book {
// Ваше определение класса
}
// Пример использования
const mag1 = new Magazine(
"National Geographic",
"National Geographic Society",
1888,
"Июль",
);
console.log(mag1.getSummary());Самостоятельное задание №2.3. Методы
Добавьте в класс Book статичный метод compareAge(), который принимает два объекта Book и возвращает сообщение, какая книга издана раньше.
P.S. Статичный метод вызывается без конструктора. Перед именем метода пишите static. Например, static compareAge() {}.
class Book {
// Используйте определение класса из задания 2.1
// и добавьте статичный метод compareAge()
}
// Пример использования
const book1 = new Book("Война и мир", "Лев Толстой", 1869);
const book2 = new Book("Анна Каренина", "Лев Толстой", 1877);
console.log(Book.compareAge(book1, book2));Материалы
Появятся позже.