A slightly briefer version of ```from```, which could be set as
```Object.from```

```const from = (i,o={},...p)=>p.map(k=>i[k]&&(o[k]=i[k]))&&o```

Usage

```let obj = from(user.profile,{otherData:"other
data"},"firstName","lastName")```

and

```
Object.from = from;
let obj = {};
Object.from(user.profile,obj,"firstName","lastName","not" /* not included
if not property of input object */);
```



On Sun, May 26, 2019 at 1:40 PM Григорий Карелин <[email protected]> wrote:

> Wouldn't it be nice to have syntax like this:
> const obj = { {firstName, lastName from user.profile}, otherData: 'other
> data'  };
> as a syntactic sugar for
> const obj = {firstName: user.profile.firstName, lastName:
> user.profile.lastName, otherData: 'other data'};
>
> Of cause at the moment we can write it in two steps:
> const {fistName, lastName} = userProfile;
> const obj = {firstName, lastName, otherData: 'other data'}
>
> But why use extra variables?
>
> Motivating example is lodash's .pick() method:
> https://lodash.com/docs/#pick
> _______________________________________________
> 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