> Le 21 juil. 2015 à 08:14, Samuel Hapák <[email protected]> a écrit :
>
> Hello there,
>
> I have written proposal to allow extend standard behavior of object
> destructuring:
> https://github.com/vacuumlabs/es-proposals/blob/master/extensible-destructuring.md
>
> Main idea is, that currently object destructuring is useless for people who
> use Map or Immutable.Map (https://facebook.github.io/immutable-js/) as their
> main data structure.
>
> This would allow authors of libraries to create map like structures that
> would support destructuring. It extends the language in a similar way
> iterator does.
>
> The main idea is, that if object defines `Symbol.get` method, it gets used to
> access properties of object instead of `[]` when destructuring.
>
> What do you think?
>
> Cheers,
>
> Samuel
>
An alternative to `Symbol.get` is a Proxy with a "get" trap. Maybe worth
experimenting with Proxies?
For example, one can imagine something like:
```js
const {author: {name: {first, last}, birthdate}} = book.toObject()
```
where `.toObject()` is a method returning a proxy, or, in implementations
lacking proxies, falling back to convert eagerly the structure into a plain
object.
—Claude
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss