_.pick https://www.npmjs.com/package/lodash.pick仍然是在 ES6 中拥有用例的 Underscore/Lodash 功能之一。
ES6 单行代码可能是 IIFE,并且会导致属性列表枚举两次:
let goodKeys = (
({toDate, fromDate, location, flavor}) => ({toDate, fromDate, location, flavor})
)(this.state);
ES.next 对应的单行_.pick
可能涉及Object.entries https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries:
Object.entries(o)
.filter(([key]) => ['toDate', 'fromDate', 'location', 'flavor'].includes(key))
.reduce((obj, [key, val]) => Object.assign(obj, { [key]: val }), {});