2017-10-05 6 views
0

I持ってこのようないくつかの真偽値を含むオブジェクト:ES6は - 真の値に基づいてオブジェクトをフィルタ処理

{ date: "2017-10-05", name_change: false, age_change: true, ... } 

Iに該当するキーをfilter()たい。 また、日付の値が必要です。どうすればいいですか?filter

よろしくお願いいたします。

+0

それが重複ではありません! – Adel

+0

それから、あなたの問題をよりよく説明する必要があります。なぜなら、重複しているように思えるからです。 –

+1

@TheArchetypalPaul - 彼はオブジェクトのプロパティではなく、オブジェクトのプロパティをフィルタリングしています。 –

答えて

1

を使用して、Array#reduceとキーの配列を反復処理し、その値のキーが含まれていない新しいオブジェクトを構築することができますtrueに等しい:

const obj = { 
 
    date: "2017-10-05", 
 
    name_change: false, 
 
    age_change: true 
 
}; 
 

 
const result = Object.keys(obj) 
 
    .reduce((o, key) => { 
 
    obj[key] !== true && (o[key] = obj[key]); 
 

 
    return o; 
 
    }, {}); 
 

 
console.log(result);

0

あなたはObject#keysでキーを取得Array.prototype.filter方法

arrayname.filter(function (el) { 
    return el.name_change; 
}); 
関連する問題