Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Diferença entre usar ou não "return" ao atribuir o valor no set do Proxy

Olá pessoal!

Seguem abaixo as duas sugestões de (parte da) resposta para este exercício (proxy para alteração/set de propriedade):

return Reflect.set(target, prop, value, receiver);

e

target[prop] = value;
  • Dúvida: qual a diferença entre colocar ou não o return ? Questiono porque não vi diferença com os 2 códigos abaixo:
Reflect.set(target, prop, value, receiver); // agora SEM o return

e

return target[prop] = value; // agora COM o return

At.te

3 respostas
solução!

Olá Elías!

Não sou especialista em JS mas pelo que entendi quando você usa o Reflect.set(target, prop, value, receiver); internamente você está fazendo o target[prop] = value.

O objetivo principal é alterar um valor.

Quando você usa o

return target[prop] = value

Você está retornando o target[prop] já com o novo valor.

Quando você não retorna, o valor ainda é alterado.

Quando você usa o:

return Reflect.set(target, prop, value, receiver);

Você está retornando um boolean que diz se a definição da propriedade ocorreu com sucesso ou não.

Quando você não retorna a operação é feita mas não da pra saber se teve sucesso.

Concluo que o return nesse script está sendo usado mais como um artefato pra saber se deu certo ou não.

Espero que tenha ajudado! :D

Bons estudos! ^^

Olá Guilherme, claro, ajudou sim.

Estava querendo entender se havia diferença, pela tua resposta entendi que neste caso não muda nada.

Obrigado!

Fala Pessoal!

Estou encerrando o tópico visto que já existe uma solução!

Caso existe alguma outra dúvida, basta criar um novo tópico.

Abraços!