mirror of
https://github.com/ruanyf/es6tutorial.git
synced 2025-05-25 03:02:21 +00:00
问题修改
阮老师你好,在747行这个例子中,filter 返回的是属性的数组集合,所以,使用for...of 得到的key应该是对应的属性 “prop” 而不是您之后备注的 "baz" 可能是我理解有误,耽误了老师宝贵的时间,还望老师见谅
This commit is contained in:
parent
32b7bd2c88
commit
3bd3d6fbdb
@ -745,21 +745,21 @@ Object.keys(proxy)
|
|||||||
下面的例子是拦截第一个字符为下划线的属性名。
|
下面的例子是拦截第一个字符为下划线的属性名。
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
var target = {
|
let target = {
|
||||||
_bar: 'foo',
|
_bar: 'foo',
|
||||||
_prop: 'bar',
|
_prop: 'bar',
|
||||||
prop: 'baz'
|
prop: 'baz'
|
||||||
};
|
};
|
||||||
|
|
||||||
var handler = {
|
let handler = {
|
||||||
ownKeys (target) {
|
ownKeys (target) {
|
||||||
return Reflect.ownKeys(target).filter(key => key[0] !== '_');
|
return Reflect.ownKeys(target).filter(key => key[0] !== '_');
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
var proxy = new Proxy(target, handler);
|
let proxy = new Proxy(target, handler);
|
||||||
for (let key of Object.keys(proxy)) {
|
for (let key of Object.keys(proxy)) {
|
||||||
console.log(key)
|
console.log(target[key]);
|
||||||
}
|
}
|
||||||
// "baz"
|
// "baz"
|
||||||
```
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user