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

Set proxy

Boa tarde Devs, tudo bem?

Fiquei com uma dúvida sobre a aula quanto ao retorno do metodo set. Por que é necessário retornar o valor que está sendo atribuído na propriedade da classe? Qual é o comportamento do set quanto ao retorno? O valor que está sendo retornado é o valor que será setado para a propriedade que foi capturada pela trap, no caso _texto?

 set(target, prop, value, receiver) {
                if (props.includes(prop)){
                    target[prop] = value
                    acao(target);
                    return value;
                }

                return Reflect.set(target, prop, value, receiver);
            }
1 resposta
solução!

Olá Vinicius, como você está?

Peço desculpas pela demora em obter um retorno.

Com o objetivo de esclarecer suas dúvidas, farei uma explicação detalhada respondendo suas dúvidas uma a uma:

  • Por que é necessário retornar o valor que está sendo atribuído na propriedade da classe?
    • A necessidade de retornar o valor que está sendo atribuído na propriedade da classe é para que o comportamento padrão da operação de atribuição continue ocorrendo, ou seja, para que a propriedade seja atualizada com o valor passado. Neste caso, após executar uma ação definida no código, a função set retorna o valor atualizado para que a operação continue a se comportar como esperado.
  • Qual é o comportamento do set quanto ao retorno?
    • O comportamento do método set é retornar true se a atribuição for bem-sucedida e false caso contrário. No entanto, neste código específico, é retornada a variável value, que representa o valor atribuído à propriedade.
  • O valor que está sendo retornado é o valor que será setado para a propriedade que foi capturada pela target, no caso _texto?
    • Sim, o valor que está sendo retornado é exatamente o valor que será setado para a propriedade que foi capturada pela target, que no caso é a propriedade _texto. O trecho de código que realiza essa operação é target[prop] = value, onde prop é o nome da propriedade sendo modificada e value é o valor que está sendo atribuído a ela. Depois que a propriedade é atualizada com o valor passado, a função retorna esse mesmo valor através do comando return value.

Espero ter ajudado. Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!