Como criar objeto proxy em javascript

Como criar objeto proxy em javascript
Em JavaScript, o Proxy Objeto permite definir o comportamento personalizado indiretamente para as operações fundamentais de um objeto. Ele também permite aos desenvolvedores envolver um objeto de proxy em torno de outro objeto e criar uma barreira indetectável ao seu redor.

Com a ajuda do objeto proxy, você pode chamar funções, acessar propriedades e definir o alvo propriedades do objeto. Um objeto de proxy também é considerado uma excelente ferramenta para encapsulamento, pois restringe o acesso direto ao objeto original.

Este artigo explicará o procedimento para criar um objeto de proxy no JavaScript. Então vamos começar!

Como criar objeto proxy em javascript

Um construtor proxy () é utilizado para criar um objeto proxy em javascript. O objeto proxy criado será usado para interceptar as operações típicas do objeto original.

Confira a sintaxe do construtor de proxy JavaScript.

Sintaxe para criar um objeto de proxy em JavaScript

Você pode utilizar a sintaxe abaixo para criar um novo objeto proxy no JavaScript:

deixe proxy = novo proxy (destino, manipulador);

Aqui, "alvo”Representa o objeto que será embrulhado,“manipulador”É o objeto que compreende os métodos para controlar o comportamento do objeto de destino especificado. Por último, "armadilhas”São adicionados dentro do“manipulador”Objeta como seus métodos.

Exemplo: como criar um objeto de proxy em javascript

Primeiro de tudo, criaremos um objeto chamado “funcionário”Tendo as três propriedades a seguir:

const funcionário =
Nome: 'Alex',
género masculino',
Designação: 'Gerente',

Então uma "manipulador”O objeto é definido, que contém JavaScript "pegar()”Método como“armadilha”. O método javascript get () recuperará o especificado “propriedade" do "alvo”Case e armazenar seu valor no objeto Handler:

const Handler =
Get (Target, Property)
console.log ('propriedade $ propriedade é acessado');
Retornar Target [Propriedade];

Na próxima etapa, criaremos um objeto proxy “ProxyEmployee"E passar o"manipulador" e "funcionário”Como objetos de destino para o construtor:

const proxyEmployee = novo proxy (funcionário, manipulador);

O "ProxyEmployee"Utiliza o"funcionário”Objeta para armazenar dados e, em seguida, tudo tem acesso ao“funcionário”Propriedades do objeto:

Por fim, usaremos o “ProxyEmployee”Objeta -se para obter o“nome" e "designação”Propriedades do“funcionário”Objeto:

console.log (proxyEmployee.nome);
console.log (proxyEmployee.designação);

A saída abaixo do ritmo significa que “ProxyEmployee”O objeto acessou com sucesso as propriedades do objeto do funcionário:

Outra coisa importante a lembrar é que, se você atualizar algum valor de propriedade do “funcionário”Objeto, mudanças também podem ser vistas em“ProxyEmployee”.

Por exemplo, modificamos o “funcionário”“ Objeto é “nome”Valor da propriedade para“Paulo”:

funcionário.nome = 'Paul';
console.log (proxyEmployee.nome);

Saída

Como você pode ver na saída, o valor do “ProxyEmployee.nome”Também é alterado. Da mesma forma, qualquer modificação no “ProxyEmployee”O objeto também refletirá sobre o“funcionário”Objeto:

ProxyEmployee.designação = 'autor';
console.log (funcionário.designação);

A execução do código acima também atualizará o “designação”Valor da propriedade do“funcionário”Objeto:

Até este ponto, você aprendeu o procedimento para criar um objeto proxy em javascript. Agora, confira a tabela a seguir para obter uma breve visão geral dos métodos de armadilha de proxy.

Armadilhas de proxy em javascript

Armadilhas de proxy Descrição
pegar() O "pegar()”A armadilha de proxy é acionada quando o objeto proxy acessa a propriedade de um objeto de destino.
definir() O "definir()”A armadilha de proxy é usada para definir o valor da propriedade do objeto de destino especificado.
getPrototype () O "getPrototype ()”Método prende uma chamada interna para o objeto.getPrototype () e retorna o protótipo do objeto de destino.
setPrototype () O "setPrototype () ”Define o protótipo do objeto de destino, invocando o objeto.Método setPrototype ().
isExtensibile () O "isoxtensible ()”A armadilha de proxy invoca o objeto.isoxtensible () método para determinar se o alvo é extensível ou não.
PreventExtensions () O "PreventExtensions ()”Trap chama o“Objeto.PreventExtensions ()”Método para evitar as extensões do objeto de destino.

Discutimos as informações críticas sobre a criação de um objeto proxy em JavaScript.

Além disso, também é fornecida uma breve descrição de algumas armadilhas úteis de proxy; Você pode explorá -los ainda mais de acordo com suas preferências.

Conclusão

O construtor proxy () é utilizado para criar um objeto proxy em javascript. Ele aceita dois argumentos: Target e Handler, onde o alvo representa o objeto que será envolvido, e o manipulador é o objeto que compreende métodos (armadilhas) para controlar o comportamento do alvo especificado. Este artigo explicou o procedimento para criar objetos proxy em javascript.