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:

javascriptclass City {
  constructor(name) {
    this.name = name;
  }
}

Będziemy imię, nazwisko i miasto przekazywać parametrami konstruktora:

javascriptclass 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:

javascriptlet city = new City('luis');
let user = new User('john', 'smit', city);

Wypiszmy imię naszego użytkownika:

javascriptconsole.log(user.name);

A teraz wypiszmy nazwę miasta dla naszego użytkownika:

javascriptconsole.log(user.city.name);
Задание 1

Dana jest następująca klasa:

javascriptclass 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.

Задание 2

Stwórz obiekt z pracownikiem za pomocą klasy z poprzedniego zadania.

Задание 3

Wypisz w konsoli imię, stanowisko i dział dla stworzonego pracownika.