Segundo o professor Flávio, tanto "quantidade" quanto "quantidade" estão aparecendo no console pq tanto o "get quantidade" quanto o atributo "quantidade" estão sendo acessados.
Agora, se eu usar o seguinte código, sem colocar o "reciever" como parâmetro:
let negociacao = new Proxy(new Negociacao(new Date(), 1, 100),{
get: function(target, prop, reciever){
console.log(`a propriedade "${prop}" foi interceptada`);
return Reflect.get(target, prop);
}
});
console.log(negociacao.quantidade);
ele imprime apenas a "quantidade" no console.
Pq isso ocorre? Nós estamos acessando o "get quantidade" e o atributo "_quantidade" da mesma forma quando usamos o código apresentado na aula.
Obrigado!