El objeto proxy en JavaScript se utiliza para definir el comportamiento personalizado de las operaciones fundamentales (por ejemplo, búsqueda de propiedades, asignación, enumeración, invocación de funciones, etc.).
Sintaxis:
var p = new Proxy(target, handler);
Parámetro: el objeto proxy acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- destino: un objeto de destino (puede ser cualquier tipo de objeto, incluida una función, una clase o incluso otro proxy) para envolver con Proxy.
- controlador: un objeto cuyas propiedades son funciones que definen el comportamiento del proxy cuando se realiza una operación en él.
Ejemplo:
<script> const Person = { Name: 'John Nash', Age: 25 }; const handler = { // target represents the Person while prop represents // proxy property. get: function(target, prop) { if (prop === 'FirstName') { return target.Name.split(' ')[0]; } if (prop === 'LastName') { return target.Name.split(' ').pop(); } else { return Reflect.get(target,prop); } } }; const proxy1 = new Proxy(Person, handler); document.write(proxy1 + "<br>"); // Though there is no Property as FirstName and LastName, // still we get them as if they were property not function. document.write(proxy1.FirstName + "<br>"); document.write(proxy1.LastName + "<br>"); </script>
Producción:
[object Object] John Nash
Nota: El código anterior se puede ejecutar directamente en la terminal siempre que NodeJs esté instalado; de lo contrario, ejecútelo en un archivo HTML pegando la etiqueta de script anterior y verifique el resultado en la consola de cualquier navegador web.
Publicación traducida automáticamente
Artículo escrito por imdhruvgupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA