Olá Gabriel, tudo bem?
GET e SET são dois métodos especiais das classes JavaScript.
- O método SET é utilizado para atribuir um valor para uma propriedade de uma classe
set propriedade(valor){código}
- O método GET é utilizado para buscar um valor de uma propriedade de uma classe
get propriedade(){código}
Para deixar a explicação mais clara, vou utilizar um exemplo mais prático realizando a criação da classe Pessoa:
class Pessoa {
constructor(nome) {
this._nome = nome;
}
get nome() {
console.log("Get foi chamado");
return this._nome;
}
set nome(novoNome) {
console.log("Set foi chamado");
this._nome = novoNome;
}
}
- Criando uma nova instancia::
pessoa1 = new Pessoa("Nádia");
- Chamando o método GET para buscar o valor da propriedade nome:
console.log(pessoa1.nome);
O valor retornado será o que foi passado no momento da criação da instancia, ou seja, a propriedade nome tem o valor "Nádia" neste momento.
- Chamando o método SET para atualizar o valor da proprieadade nome:
pessoa1.nome = "Danielle"
O valor atual da propriedade nome é "Nádia", ao chamar o método SET, atualizamos este valor para "Danielle"
- Chamando novamente o método GET para buscar o novo valor da propriedade nome:
console.log(pessoa1.nome);
O valor retornado será o novo valor atualizado que passamos ao chamar o método SET, ou seja, a propriedade nome agora tem o valor "Danielle".
Espero ter ajudado, qualquer nova dúvida é só falar e bons estudos!