Объекты внутри классов в ООП в JavaScript
В классах можно использовать объекты других классов. Давайте посмотрим на примере. Пусть мы хотим сделать юзера с именем и фамилией, а также городом, в котором он живет. Пусть у нас есть следующий класс для города:
javascriptclass City {
constructor(name) {
this.name = name;
}
}
Будем имя, фамилию и город передавать параметрами конструктора:
javascriptclass User {
constructor(name, surn, city) {
this.name = name;
this.surn = surn;
this.city = city;
}
}
При этом имя и фамилия будут строками, а вот город - объектом своего отдельного класса:
javascriptlet city = new City('luis');
let user = new User('john', 'smit', city);
Давайте выведем имя нашего юзера:
javascriptconsole.log(user.name);
А теперь выведем название города для нашего юзера:
javascriptconsole.log(user.city.name);
Задание 1
Дан следующий класс:
javascriptclass Employee {
constructor(name, position, department) {
this.name = name;
this.position = position;
this.department = department;
}
}
Сделайте так, чтобы во второй и третий параметры передавались объекты отдельных классов.
Задание 2
Создайте объект с работником с помощью класса из предыдущей задачи.
Задание 3
Выведите в консоль имя, должность и отдел для созданного работника.