# Объекты внутри классов в ООП в JavaScript

В классах можно использовать объекты других классов. Давайте посмотрим на примере. Пусть мы хотим сделать юзера с именем и фамилией, а также городом, в котором он живет. Пусть у нас есть следующий класс для города:

`class City { constructor(name) { this.name = name; } }`

Будем имя, фамилию и город передавать параметрами конструктора:

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

При этом имя и фамилия будут строками, а вот город - объектом своего отдельного класса:

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

Давайте выведем имя нашего юзера:

`console.log(user.name);`

А теперь выведем название города для нашего юзера:

`console.log(user.city.name);`

Дан следующий класс:

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

Сделайте так, чтобы во второй и третий параметры передавались объекты отдельных классов.

Создайте объект с работником с помощью класса из предыдущей задачи.

Выведите в консоль имя, должность и отдел для созданного работника.

←→
↑