From 9708a2158135c5fa82a0930ed0a2d465463de9c5 Mon Sep 17 00:00:00 2001 From: Simon Ma Date: Wed, 16 May 2018 20:43:29 +0800 Subject: [PATCH] Update proxy.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 纠正错别字 > **构建函数** 为 构造函数 2. 纠正语义 > 有被`for...in`循环所排除。 3. 增加 > `has` 方法的参数说明 --- docs/proxy.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/proxy.md b/docs/proxy.md index c7dfa8c..e486078 100644 --- a/docs/proxy.md +++ b/docs/proxy.md @@ -503,6 +503,8 @@ Reflect.apply(proxy, null, [9, 10]) // 38 `has`方法用来拦截`HasProperty`操作,即判断对象是否具有某个属性时,这个方法会生效。典型的操作就是`in`运算符。 +`has`方法可以接受两个参数,分别是目标对象、需查询的属性名。 + 下面的例子使用`has`方法隐藏某些属性,不被`in`运算符发现。 ```javascript @@ -579,7 +581,7 @@ for (let b in oproxy2) { // 99 ``` -上面代码中,`has`拦截只对`in`运算符生效,对`for...in`循环不生效,导致不符合要求的属性没有被排除在`for...in`循环之外。 +上面代码中,`has`拦截只对`in`运算符生效,对`for...in`循环不生效,导致不符合要求的属性没有被`for...in`循环所排除。 ### construct() @@ -596,7 +598,7 @@ var handler = { `construct`方法可以接受两个参数。 - `target`: 目标对象 -- `args`:构建函数的参数对象 +- `args`:构造函数的参数对象 下面是一个例子。