問題:
次のような関数をどのように記述できますか?最も簡潔な方法でオブジェクトから特定のプロパティを選択します。 ES6?
初期の解決策:
次のアプローチでは、構造化と単純化されたオブジェクト リテラルを使用してこれを実現します:
(v) => { let { id, title } = v; return { id, title }; }
改善解決策:
より合理化されたソリューション。プロパティ名の繰り返しを排除します。これはパラメータの構造化によって実現できます。
({id, title}) => ({id, title})
このソリューションは、必要な機能を維持しながら、より簡潔な代替手段を提供します。
代替アプローチ:
function pick(o, ...props) { var has = p => o.propertyIsEnumerable(p), get = p => Object.getOwnPropertyDescriptor(o, p); return Object.defineProperties({}, Object.assign({}, ...props .filter(prop => has(prop)) .map(prop => ({prop: get(props)}))) ); }
以上がES6 でオブジェクトから特定のプロパティを簡潔に抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。