El método handler.construct() en JavaScript es una trampa para la nueva operación y este método devuelve un objeto.
Sintaxis:
const p = new Proxy(target, { construct: function(target, argumentsList, newTarget) { } });
Parámetros: Este método acepta tres parámetros como se mencionó anteriormente y se describe a continuación:
- Destino: este parámetro contiene el objeto de destino.
- argumentsList: este parámetro contiene la lista del constructor.
- newTarget: este parámetro contiene el constructor que se llamó originalmente, p arriba.
Valor de retorno: este método devuelve un objeto.
Los siguientes ejemplos ilustran el método handler.construct() en JavaScript:
Ejemplo 1:
javascript
<script> function monster1(disposition) { this.disposition = disposition; } const handler1 = { construct(target, args) { console.log('Users at Geeksforgeeks are called'); return new target(...args); } }; const proxy1 = new Proxy(monster1, handler1); console.log(new proxy1('Geeks').disposition); var pro = new Proxy(function() {}, { construct: function(objTarget, args, oldConstructor) { return { Value : args[0] + " to anybody" } } }) console.log(JSON.stringify(new pro("Hello "), null, ' ')) </script>
Producción:
"Users at Geeksforgeeks are called" "Geeks" "{ "Value": "Hello to anybody" }"
Ejemplo 2:
javascript
<script> const p = new Proxy(function() {}, { construct: function(target, argumentsList, newTarget) { console.log('Value: ' + argumentsList.join(', ')); return { value: argumentsList[0] * 10 /3}; } }); console.log('New Value: ' +new p(4).value); </script>
Producción:
"Value: 4" "New Value: 13.333333333333334"
Navegadores compatibles: los navegadores compatibles con el método handler.construct() se enumeran a continuación:
- Google Chrome 49 y superior
- Firefox 18 y superior
- Ópera 36 y superior
- Safari 10 y superior
- Borde 12 y superior
Publicación traducida automáticamente
Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA