- ES6 教程
- ES6 - 首頁
- ES6 - 概述
- ES6 - 環境
- ES6 - 語法
- ES6 - 變數
- ES6 - 運算子
- ES6 - 決策
- ES6 - 迴圈
- ES6 - 函式
- ES6 - 事件
- ES6 - Cookie
- ES6 - 頁面重定向
- ES6 - 對話方塊
- ES6 - void 關鍵字
- ES6 - 頁面列印
- ES6 - 物件
- ES6 - 數字
- ES6 - 布林值
- ES6 - 字串
- ES6 - Symbol
- ES6 - 新的字串方法
- ES6 - 陣列
- ES6 - 日期
- ES6 - 數學
- ES6 - 正則表示式
- ES6 - HTML DOM
- ES6 - 迭代器
- ES6 - 集合
- ES6 - 類
- ES6 - Map 和 Set
- ES6 - Promise
- ES6 - 模組
- ES6 - 錯誤處理
- ES6 - 物件擴充套件
- ES6 - Reflect API
- ES6 - Proxy API
- ES6 - 驗證
- ES6 - 動畫
- ES6 - 多媒體
- ES6 - 除錯
- ES6 - 圖片地圖
- ES6 - 瀏覽器
- ES7 - 新特性
- ES8 - 新特性
- ES9 - 新特性
- ES6 有用資源
- ES6 - 快速指南
- ES6 - 有用資源
- ES6 - 討論
ES6 - Proxy API
ES6 使用 Proxy 實現了一種超程式設計的攔截形式。與 Reflect API 類似,Proxy API 是在 ES6 中實現超程式設計的另一種方式。Proxy 物件用於為基本操作定義自定義行為。代理物件代表實際物件執行某些操作。
下面列出了與 ES6 代理相關的各種術語
| 序號 | 方法和描述 |
|---|---|
| 1 | handler 包含陷阱的佔位符物件 |
| 2 | traps 提供屬性訪問的方法。這類似於作業系統中陷阱的概念 |
| 1 | target 代理虛擬化的物件。它通常用作代理的後端儲存。 |
語法
下面是 Proxy API 的語法,其中,target 可以是任何型別的物件,例如陣列、函式或另一個代理,而 handler 是一個其屬性為函式的物件。這定義了代理的行為。
const proxy = new Proxy(target,handler)
Handler 方法
handler 物件包含 Proxy 的陷阱。所有陷阱都是可選的。如果未定義陷阱,則預設行為是將操作轉發到 target。一些常見的 handler 方法如下:
| 序號 | 方法和描述 |
|---|---|
| 1 |
handler.apply()
函式呼叫的陷阱。 |
| 2 |
handler.construct()
new 運算子的陷阱。 |
| 3 |
handler.get()
獲取屬性值的陷阱。 |
| 4 |
handler.set()
設定屬性值的陷阱。 |
| 5 |
handler.has()
in 運算子的陷阱。 |
廣告