Get to know MDN better
This page was translated from English by the community. Learn more and join the MDN Web Docs community.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2016년 9월.
Proxy 생성자는 Proxy 객체를 만드는 데 사용됩니다.
Proxy로 래핑할 대상 객체입니다. 네이티브 배열, 함수 또는 다른 프록시를 포함한 모든 종류의 객체가 될 수 있습니다.
handler작업이 수행될 때 프록시의 동작을 정의하는 속성이 함수인 객체입니다.
Proxy() 생성자를 사용하여 새 Proxy 객체를 만듭니다. 이 생성자는 두 가지 필수 인수를 사용합니다.
빈 핸들러는 거의 모든 면에서 대상 객체와 똑같은 동작을 하는 프록시가 생성되며, handler 객체에서 함수의 집합을 정의하여 프록시의 특정 동작을 커스텀할 수 있습니다. 예를 들어, get()을 정의하여 대상 속성 접근자의 사용자 정의 버전을 제공할 수 있습니다.
이 섹션에서는 정의할 수 있는 모든 처리기 함수를 나열합니다. 처리기 함수는 기본 대상 객체에 대한 호출을 가로채기 때문에 트랩(traps)이라고도 합니다.
handler.apply()함수 호출에 대한 트랩.
handler.construct()new 연산자에 대한 트랩.
handler.defineProperty()Object.defineProperty에 대한 트랩.
handler.deleteProperty()delete 연산자에 대한 트랩.
handler.get()속성 값을 가져오기(get) 위한 트랩.
handler.getOwnPropertyDescriptor()Object.getOwnPropertyDescriptor에 대한 트랩.
handler.getPrototypeOf()Object.getPrototypeOf에 대한 트랩.
handler.has()in 연산자에 대한 트랩.
handler.isExtensible()Object.isExtensible에 대한 트랩.
handler.ownKeys()Object.getOwnPropertyNames와 Object.getOwnPropertySymbols에 대한 트랩
handler.preventExtensions()Object.preventExtensions에 대한 트랩
handler.set()속성 값 설정(set)에 대한 트랩.
handler.setPrototypeOf()Object.setPrototypeOf에 대한 트랩.
이 예제의 대상 객체는 notProxied와 proxied 속성을 가지고 있습니다. 우리는 proxied에 대해 다른 값을 반환하는 처리기를 정의하고 다른 모든 액세스는 대상 객체를 통해 수행되도록 할 것입니다.
| ECMAScript® 2027 Language Specification # sec-proxy-constructor |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025년 10월 9일 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.