9得票7回答
有人用过ECMAScript代理吗?

我正在努力理解 ESx(Harmony?)代理。我现在认为我知道基本知识,但我不认为我能够充分利用它们。 有人成功地利用它们做了一些好事吗?我不知道有哪个库或其他东西这样做过。

9得票1回答
为什么由“async”函数返回的代理会触发“.then()”?

我正在使用babel (env)编译代码,将其编译到ES5。 这是代码: (async () => { const p = async () => { return new Proxy({}, { get: ...

8得票2回答
代理对象无法添加到DOM中(陷阱也不触发)

我试着创建一个Image的代理对象来捕捉属性,但即使使用一个空处理程序,我仍然会得到一个错误消息。 TypeError:Node.appendChild的第1个参数未实现Node接口。 代理对象应该充当目标对象,所以这让我有些困惑。据我所知,您也应该能够使用DOM节点来完成此操作(?)...

8得票3回答
JavaScript Proxy 的替代方案

我希望在一个名为ObservableList的自定义类中使用Proxy,它包含一个Array。由于Proxy只能在ES6之后使用,所以我想知道是否有任何替代实现。 我的要求是,一旦ObservableList更改,观察者会得到更新(而不是通知),以使观察者始终与具有某些过滤或映射方法的可观察...

8得票2回答
如何从代理数组中获取已删除或插入的项目?

我正在尝试使用JavaScript代理检测对象数组中的更改。 问题:每当数组发生更改,如删除或插入,我都希望获取已删除或插入的项。 当前代码: target = [{ id: 1, a: 'a' }, { id: 2, a: 'b' }]; proxy = new Proxy(targe...

8得票4回答
谷歌浏览器中是否有代理对象填充?

这真的可能吗?其他浏览器呢?ES6何时会“准备就绪”并推出? https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy 顺便说一下,https://github.com/tv...

7得票3回答
为什么 ownKeys Proxy 陷阱与 Object.keys() 不起作用?

在MDN上的Proxy ownKeys陷阱文档中,它指出它将拦截Object.keys()调用: 此陷阱可以拦截以下操作: Object.getOwnPropertyNames() Object.getOwnPropertySymbols() Object.keys() Reflect.o...

7得票1回答
ES6代理(set属性陷阱)无法触发数组长度的变化

使用JavaScript ES6代理时,当直接分配数组索引时,数组长度的set属性陷阱不会触发。 例如: const proxy = new Proxy([], { set: function(obj, name, value) { console.log(`set...

7得票2回答
将一个 JavaScript 对象转换为代理对象(而不是它的引用)。

我可以使用JavaScript对象o并从中创建一个新的代理对象: let p = new Proxy(object, { ... }) 但是有没有一种方法可以改变现有对象引用以跟踪原始对象的更改?特别是,我是否可以跟踪来自外部源的对象上新键的添加?

7得票1回答
使对象或类属性仅可被调用

TL:DR; 有没有可能让对象的属性仅限于可调用(作为函数)? 我的意思是 class Foo{ bar(value){ return value } } let newFoo = new Foo() console.log(newFoo.bar(1...