1
0
mirror of https://github.com/ruanyf/es6tutorial.git synced 2025-05-25 03:02:21 +00:00

修正参数名

property 改为 property key 防止产生歧义
This commit is contained in:
张德帥 2019-12-16 15:48:15 +08:00 committed by GitHub
parent c4f4570f67
commit ad12c153b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -8,13 +8,13 @@ Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界
```javascript ```javascript
var obj = new Proxy({}, { var obj = new Proxy({}, {
get: function (target, key, receiver) { get: function (target, propKey, receiver) {
console.log(`getting ${key}!`); console.log(`getting ${propKey}!`);
return Reflect.get(target, key, receiver); return Reflect.get(target, propKey, receiver);
}, },
set: function (target, key, value, receiver) { set: function (target, propKey, value, receiver) {
console.log(`setting ${key}!`); console.log(`setting ${propKey}!`);
return Reflect.set(target, key, value, receiver); return Reflect.set(target, propKey, value, receiver);
} }
}); });
``` ```
@ -44,7 +44,7 @@ Proxy 对象的所有用法,都是上面这种形式,不同的只是`handler
```javascript ```javascript
var proxy = new Proxy({}, { var proxy = new Proxy({}, {
get: function(target, property) { get: function(target, propKey) {
return 35; return 35;
} }
}); });
@ -80,7 +80,7 @@ Proxy 实例也可以作为其他对象的原型对象。
```javascript ```javascript
var proxy = new Proxy({}, { var proxy = new Proxy({}, {
get: function(target, property) { get: function(target, propKey) {
return 35; return 35;
} }
}); });
@ -155,11 +155,11 @@ var person = {
}; };
var proxy = new Proxy(person, { var proxy = new Proxy(person, {
get: function(target, property) { get: function(target, propKey) {
if (property in target) { if (propKey in target) {
return target[property]; return target[propKey];
} else { } else {
throw new ReferenceError("Property \"" + property + "\" does not exist."); throw new ReferenceError("Prop name \"" + propKey + "\" does not exist.");
} }
} }
}); });
@ -281,7 +281,7 @@ document.body.appendChild(el);
```javascript ```javascript
const proxy = new Proxy({}, { const proxy = new Proxy({}, {
get: function(target, property, receiver) { get: function(target, key, receiver) {
return receiver; return receiver;
} }
}); });
@ -292,7 +292,7 @@ proxy.getReceiver === proxy // true
```javascript ```javascript
const proxy = new Proxy({}, { const proxy = new Proxy({}, {
get: function(target, property, receiver) { get: function(target, key, receiver) {
return receiver; return receiver;
} }
}); });