- ES6 教程
- ES6 - 主頁
- ES6 - 概覽
- ES6 - 環境
- ES6 - 語法
- ES6 - 變數
- ES6 - 運算子
- ES6 - 決策
- ES6 - 迴圈
- ES6 - 函式
- ES6 - 事件
- ES6 - Cookie
- ES6 - 頁面重定向
- ES6 - 對話方塊
- ES6 - Void 關鍵字
- ES6 - 頁面列印
- ES6 - 物件
- ES6 - Number
- ES6 - Boolean
- ES6 - 字串
- ES6 - Symbol
- ES6 - 新字串方法
- ES6 - 陣列
- ES6 - Date
- ES6 - Math
- ES6 - RegExp
- 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 - handler.has()
以下示例定義了一個類 Student,該類有一個建構函式,它將 firstName 和 lastName 作為引數。此程式建立一個代理,並定義一個處理程式物件。當使用 in 運算子時,就會呼叫處理程式物件的 has() 方法。
<script>
class Student{
constructor(firstName,lastName){
this.firstName = firstName
this.lastName = lastName
}
}
const handler = {
has: function(target,property){
console.log('Checking for '+property+' in the object')
return Reflect.has(target,property)
}
}
const s1 = new Student("Tutorials","Point")
const proxy = new Proxy(s1,handler)
console.log('firstName' in proxy)
</script>
以上程式碼的輸出如下 −
Checking for firstName in the object true
廣告