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:
class City {
constructor(name) {
this.name = name;
}
}
Vamos passar o nome, sobrenome e cidade como parâmetros do construtor:
class 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:
let city = new City('luis');
let user = new User('john', 'smit', city);
Vamos exibir o nome do nosso usuário:
console.log(user.name);
E agora vamos exibir o nome da cidade do nosso usuário:
console.log(user.city.name);
Dada a seguinte classe:
class 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.
Crie um objeto de funcionário usando a classe da tarefa anterior.
Exiba no console o nome, cargo e departamento do funcionário criado.