2016-11-20 14 views
1

異なるキーを持つオブジェクトの配列をループしようとしています。それらのキーに基づいてオブジェクトを選択する方法はありますか?Javascript:オブジェクトの配列をフィルタリングし、値ではなくキーに基づいて選択します

var array = [ 
    { 
    "1400": "Accident and Health" 
    }, 
    { 
    "100": "Life" 
    }, 
    { 
    "1300": "Pension" 
    } 
] 
var a = "100"; 
var pop = _.pick(array,a); 
console.log(pop); 

所望の出力:

ライフ

ありがとうございます!

答えて

2

in演算子を使用できます。

var array = [{ 1400: "Accident and Health" }, { 100: "Life" }, { 1300: "Pension" }]; 
 

 
var result = (key => array.find(item => key in item)[key])(100); 
 

 
console.log(result);

0

var array = [ 
 
    { 
 
    "1400": "Accident and Health" 
 
    }, 
 
    { 
 
    "100": "Life" 
 
    }, 
 
    { 
 
    "1300": "Pension" 
 
    } 
 
] 
 
var a = "100"; 
 

 

 
var pop = _.map(array, function(currentObject) { 
 
    var b= _.pick(currentObject, a); 
 
    if(!_.isEmpty(b)) 
 
    console.log(b); 
 
});
<script src="http://underscorejs.org/underscore-min.js"></script>

0

Lodash 4.17.2

_.chain(array).map('100').compact().head().value(); 
関連する問題