Obiekty wewnątrz klas w OOP w JavaScript
W klasach można używać obiektów innych klas. Spójrzmy na przykład. Załóżmy, że chcemy stworzyć użytkownika z imieniem i nazwiskiem, a także miastem, w którym mieszka. Załóżmy, że mamy następującą klasę dla miasta:
class City {
constructor(name) {
this.name = name;
}
}
Będziemy imię, nazwisko i miasto przekazywać parametrami konstruktora:
class User {
constructor(name, surn, city) {
this.name = name;
this.surn = surn;
this.city = city;
}
}
Przy czym imię i nazwisko będą ciągami znaków, a miasto - obiektem swojej osobnej klasy:
let city = new City('luis');
let user = new User('john', 'smit', city);
Wypiszmy imię naszego użytkownika:
console.log(user.name);
A teraz wypiszmy nazwę miasta dla naszego użytkownika:
console.log(user.city.name);
Dana jest następująca klasa:
class Employee {
constructor(name, position, department) {
this.name = name;
this.position = position;
this.department = department;
}
}
Spraw, aby do drugiego i trzeciego parametru przekazywane były obiekty osobnych klas.
Stwórz obiekt z pracownikiem za pomocą klasy z poprzedniego zadania.
Wypisz w konsoli imię, stanowisko i dział dla stworzonego pracownika.