- 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
广告