I got the solution, but it's puzzled.
```js
const uint8 = new Uint8Array([1, 2, 3, 4]);
const proxy = new Proxy(uint8, {
get(target, property) {
const ret = Reflect.get(target, property);
return typeof ret === "function" ? ret.bind(target) : ret;
}
});
proxy.map(e => e + 1); // -> Uint8Array [2, 3, 4, 5]
for(const val of proxy) {
console.log(val); // -> 1, 2, 3, 4
}
```
On 2017/04/29 22:27, 森建 wrote:
Hi there!
Proxy of TypedArray doesn't have [[TypedArrayName]] and
[[ViewedArrayBuffer]] slots. so maybe, [22.2.3.5.1
ValidateTypedArray](http://www.ecma-international.org/ecma-262/7.0/#sec-validatetypedarray)
throws TypeError like following code.
```js
const uint8 = new Uint8Array([1, 2, 3, 4]);
const proxy = new Proxy(uint8, {});
proxy.map(e => e + 1); // -> TypeError
for(const val of proxy) {
console.log(val); // -> TypeError
}
```
Is this behavior taken into account?
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss