Objetos dentro de classes em POO em JavaScript

Em classes, podemos usar objetos de outras classes. Vamos ver com um exemplo. Suponha que queremos criar um usuário com nome e sobrenome, e também com a cidade onde ele mora. Suponha que temos a seguinte classe para a cidade:

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

Vamos passar o nome, sobrenome e cidade como parâmetros do construtor:

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

Neste caso, o nome e o sobrenome serão strings, mas a cidade - será um objeto de sua própria classe separada:

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

Vamos exibir o nome do nosso usuário:

javascriptconsole.log(user.name);

E agora vamos exibir o nome da cidade do nosso usuário:

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

Dada a seguinte classe:

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

Faça com que no segundo e terceiro parâmetros sejam passados objetos de classes separadas.

Задание 2

Crie um objeto de funcionário usando a classe da tarefa anterior.

Задание 3

Exiba no console o nome, cargo e departamento do funcionário criado.