Thanks, I had missed the `Reflect.construct()` method. One problem with
your solution is that the `Array` iterator methods like `.map()` use
`this.constructor[Symbol.species]` to construct their result, so the
prototype actually needs to be set like this:
```
SubArray.prototype = Object.create(Array.prototype, {
constructor: {
value: SubArray,
writeable: true,
enumerable: false,
configurable: false,
}
})
```
Setting the `constructor` property on the prototype is part of the
MakeConstructor operation (for full parity the `prototype` property should
be defined as non-enumerable, non-configurable as well).
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss