LoginSignup
6
6

More than 5 years have passed since last update.

[Node.js] オブジェクトから特定の key-value だけ抜き出したオブジェクトを作る

Posted at

LodashpickBy 、または omitBy を使うと簡単です。

pickBy-and-omitBy-sample.js
let lodash = require('lodash');

let obj = {
    'pick_a': 'a',
    'pick_b': 'b',
    'omit_c': 'c',
    'omit_d': 'd'
};

/* obj から pick で始まる key だけからなるオブジェクト ( newObj ) を作成する */

let newObj;

// pickBy の例
newObj = lodash.pickBy(obj, function(value, key) {
    return key.match(/^pick_/);
});
// => { 'pick_a': 'a', 'pick_b': 'b' }

// omitBy の例
newObj = lodash.omitBy(obj, function(value, key) {
    return ! key.match(/^pick_/);
    // or return key.match(/^omit_/);
});
// => { 'pick_a': 'a', 'pick_b': 'b' }

pickBy は ピックアップするか否かの boolean を返す function を第二引数に、 omitBy は オミットするか否かの boolean を返す function を第二引数に渡します。

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6