JSでオブジェクトのリストからあるキーを持つオブジェクトを抽出したい

JSでオブジェクトのリストからあるキーを持つオブジェクトを抽出したい:


目的

オブジェクトのリストからあるキーを持つオブジェクトを抽出したい。

具体的には以下のデータ構造のものからキーのリストを与えて、いずれかのキーを持つリストを返してほしい。

// 抽出元のデータ 
let data_list = [ 
    {"code":"01", "value":"a"}, 
    {"code":"02", "value":"b"}, 
    {"code":"03", "value":"c"}, 
    {"code":"04", "value":"d"}, 
    {"code":"05", "value":"e"}, 
    {"code":"06", "value":"f"}, 
]; 
 
// 抽出したいキーの値のリスト 
let code_list = ["01", "02", "03"]; 


実装

いちいちfor文を回したくない

以下のように実装した

// filter関数で条件の関数がtrueになるものだけを抽出 
let dst_data = data_list.filter( 
    (element) => { 
        // 要素のキーが抽出したいキーのリストに含まれているならtrue 
        return code_list.includes(element.code); 
    } 
); 
 
console.log(dst_data); 


参考リンク

Array.prototype.includes()
JavaScriptでforEach, filter, map, reduceとか

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)