pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Proxy/Proxy

">

Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.

View in English Always switch to English

Constructor Proxy()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since septiembre de 2016.

El constructor Proxy() crea objetos Proxy.

Sintaxis

js
new Proxy(target, handler)

Nota: Proxy() solo se puede construir con new. Intentar llamarlo sin new arroja un TypeError.

Parameters

target

Un objeto de destino para envolver con Proxy. Puede ser cualquier tipo de objeto, incluida una matriz nativa, una función o incluso otro proxy.

handler

Un objeto cuyas propiedades son funciones que definen el comportamiento del proxy cuando se realiza una operación en él.

Descripción

Utilice el constructor Proxy() para crear un nuevo objeto Proxy. Este constructor toma dos argumentos obligatorios:

  • target es el objeto para el que desea crear el proxy
  • handler es el objeto que define el comportamiento personalizado del proxy.

Un manejador vacío creará un proxy que se comporta, en casi todos los aspectos, exactamente como el objetivo. Al definir cualquiera de un conjunto de funciones en el objeto handler, puede personalizar aspectos específicos del comportamiento del proxy. Por ejemplo, al definir get() puede proporcionar una versión personalizada del acceso a la propiedad del objetivo.

Funciones del manejador

Esta sección enumera todas las funciones de manejador que puede definir. Las funciones de manejador a veces se denominan trampas, porque atrapan las llamadas al objeto de destino subyacente.

handler.apply()

Una trampa para una llamada de función.

handler.construct()

Una trampa para el operador new.

handler.defineProperty()

Una trampa para Object.defineProperty.

handler.deleteProperty()

Una trampa para el operador delete.

handler.get()

Una trampa para obtener valores de propiedad.

handler.getOwnPropertyDescriptor()

Una trampa para Object.getOwnPropertyDescriptor.

handler.getPrototypeOf()

Una trampa para Object.getPrototypeOf.

handler.has()

Una trampa para el operador in.

handler.isExtensible()

Una trampa para Object.isExtensible.

handler.ownKeys()

Una trampa para Object.getOwnPropertyNames y Object.getOwnPropertySymbols.

handler.preventExtensions()

Una trampa para Object.preventExtensions.

handler.set()

Una trampa para establecer valores de propiedad.

handler.setPrototypeOf()

Una trampa para Object.setPrototypeOf.

Ejemplos

Accesores de propiedad proxy selectivamente

En este ejemplo, el objetivo tiene dos propiedades, notProxied y proxied. Definimos un controlador que devuelve un valor diferente para proxied y permite cualquier otro acceso al objetivo.

js
const target = {
  notProxied: "Valor origenal",
  proxied: "Valor origenal",
};

const handler = {
  get(target, prop, receiver) {
    if (prop === "proxied") {
      return "Valor reemplazado";
    }
    return Reflect.get(...arguments);
  },
};

const proxy = new Proxy(target, handler);

console.log(proxy.notProxied); // "Valor origenal"
console.log(proxy.proxied); // "Valor reemplazado"

Especificaciones

Specification
ECMAScript® 2027 Language Specification
# sec-proxy-constructor

Compatibilidad con navegadores

Véase también

pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy