JS-0702 - JavaScript Completo ES6 - Get e Set

JS-0702 - JavaScript Completo ES6 - Get e Set
Publicado em 03/05/2021 10h50
Visualizações: 542

Atribuindo e acessando propriedades de objetos

Em JavaScript, utilizamos set e get para manipular propriedades de objetos, onde set permite a definição de um valor para uma determinada propriedade e get permite a associação de uma propriedade a uma função que necessite de acesso.

Na maioria dos casos, setters e getters são utilizados em conjunto, criando uma pseudo-propriedade. Podemos definir comportamentos diferentes de get e set para um método.

Ao utilizar o método get em um objeto, definimos o que será retornado deste, onde this pode ser utilizado para retornar valores computados ou a propriedade em si. Já o set, permite a atribuição de um valor passado como parâmetro e internamente este valor será associado à propriedade definida. Automaticamente, quando acessarmos a propriedade do objeto será retornado um valor, caso à mesma propriedade seja definido um valor, este será processado pelo set do objeto. Ex:

JS-0702 - JavaScript Completo ES6 - Get e Set

Observação: o underline é uma convenção para indicar que as propriedades são privadas, mas não altera nenhuma funcionalidade da propriedade.

Valores estáticos

Quando é definido apenas o método get de uma propriedade ele é tido como um valor estático, que não será possível mudar. No exemplo anterior, ao realizar a atribuição de um valor para à propriedade "fullName", o valor não será atribuído no objeto:

JS-0702 - JavaScript Completo ES6 - Get e Set

Valores estáticos são muito utilizados em constantes matemáticas, evitando assim sua adulteração.

O método set também pode ser utilizado isoladamente, permitindo que diferentes getters utilize o valor passado neste set para processamento, devolvendo o dado computado de formas diversas. A propriedade que tem somente o set será retornada como undefined caso seja acessada, pois não há método de acesso. Ex:

Classes

Uma classe retorna um objeto e assim como em um objeto, as classes podem ter métodos de get e set, permitindo o encapsulamento das propriedades. Ex:

JS-0702 - JavaScript Completo ES6 - Get e Set

Com o set podemos modificar apenas parte do elemento de get. Neste ponto que o underline é utilizado para a definição de variáveis privadas.

JS-0702 - JavaScript Completo ES6 - Get e Set

Veja também:

Confira mais artigos relacionados

Este website utiliza cookies próprios e de terceiros a fim de personalizar o conteúdo, melhorar a experiência do usuário, fornecer funções de mídias sociais e analisar o tráfego. Para continuar navegando você deve concordar com nossa Política de Privacidade

Sim, eu aceito. Não, eu não aceito.