
本文共 3976 字,大约阅读时间需要 13 分钟。
������������
���������ECMAScript 6���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������
���������������������������������������������������������������������������������Proxy���������������������������������������������������
const target = { id: 'target' };const handler = {};const proxy = new Proxy(target, handler);
������������������������������������������������������������������������������������������
console.log(proxy.id); // ������ 'target'target.id = 'foo';console.log(proxy.id); // ������ 'foo'proxy.id = 'bar';console.log(target.id); // ������ 'bar'
������������������
������������������������������������������������������������������������������������������������������������������������������get
���set
���has
���������������������������������������������������������������������������������
���������
const target = { foo: 'bar' };const handler = { get(target, property, receiver) { console.log(`������������������ '${property}'`); return Reflect.get(...arguments); }};const proxy = new Proxy(target, handler);console.log(proxy.foo); // ������ '������������������ 'foo''
���������������������target
������������������������������������������receiver
������������proc
������������������
������API
������API���������������������������������������������������������������������������������������������ECMAScript���������������������������������������������������������������������������������������Reflect.get
���Reflect.set
���Reflect.has
���Reflect.defineProperty
������
���������
const target = { foo: 'bar' };const handler = { get(target, property, receiver) { console.log(`��������������� '${property}'`); return Reflect.get(...arguments); }};const proxy = new Proxy(target, handler);console.log(proxy.foo); // ������ 'bar'
������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������TypeError���
���������������
Proxy.revocable()
���������������������������������������������������������revoke()
������������������������������������������������TypeError���������������������������������������������������������������������������������������������������������
���������
const target = { id: 'target' };const handler = {};const { proxy, revoke } = Proxy.revocable(target, handler);console.log(proxy.id); // ������ 'target'revoke();console.log(proxy.id); // ������ TypeError
������������API
������API���������������������������������������������������������������������Reflect.defineProperty()
���������������������������������������������������������������������������������������
const target = {};if (Reflect.defineProperty(target, 'foo', { value: 'bar' })) { console.log('������������������');} else { console.log('������');}
������������������������
���������������ECMAScript 6������������������������������������������������������������������������������this
������������������������������������������������������������������������������Some���������������Date
���������������������������������TypeError���
������������
���������ECMAScript 6���������������������������������������������
- ������������������������������
- ������������������������������
- ������API���������������
- ������������������������������
- Proxy.revocable()���������������������
- ������API������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
发表评论
最新留言
关于作者
