Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Encapsulamento e Object.freeze()

Olá. Minha dúvida é sobre o encapsulamento. Nas regras de negócio do projeto do curso está definido que uma negociação é imutável, ou seja, utilizará apenas getters. O Object.freeze() me pareceu congelar o objeto como um todo, e não de forma inteligente apenas nas "propriedades privadas". Contudo em um outro projeto qualquer, no qual é permitido alterar utilizando setters mas também evitando ser acessado externamente, posso utilizar o Object.freeze()? Há outra forma de fazê-lo? Ou terei que correr o risco de ser modificado?

1 resposta
solução!

Alteração no estado + imutabilidade = criação de novos objetos a cada alteração :). Você pode usar o Object.assign para sempre ir criando novas versões de um objeto baseado em um estado anterior.