Objekti unutar klasa u OOP u JavaScript-u

U klasama se mogu koristiti objekti drugih klasa. Pogledajmo to na primeru. Recimo da želimo da napravimo korisnika sa imenom i prezimenom, kao i gradom u kojem živi. Pretpostavimo da imamo sledeću klasu za grad:

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

Prosleđivaćemo ime, prezime i grad kao parametre konstruktora:

javascriptclass User {
  constructor(name, surn, city) {
    this.name = name;
    this.surn = surn;
    this.city = city;
  }
}

Pritom će ime i prezime biti stringovi, a grad - objekat svoje posebne klase:

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

Hajde da ispišemo ime našeg korisnika:

javascriptconsole.log(user.name);

A sada hajde da ispišemo naziv grada za našeg korisnika:

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

Data je sledeća klasa:

javascriptclass Employee {
  constructor(name, position, department) {
    this.name = name;
    this.position = position;
    this.department = department;
  }
}

Uredite tako da se u drugi i treći parametar prosleđuju objekti posebnih klasa.

Задание 2

Kreirajte objekat zaposlenog pomoću klase iz prethodnog zadatka.

Задание 3

Ispišite u konzolu ime, poziciju i odeljenje za kreiranog zaposlenog.