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

Reply via email to