[英]Underscore to filter array object using another array
如何從數組b獲取特定屬性。 這些要過濾的屬性在數組a中。
有沒有更簡單的方法可以使用下划線。
var a = [{
name: "code"
}, {
name: "barcode"
}, {
name: "status",
type: "button"
}];
var b = [{
id: 1,
code: 10,
barcode: "121212",
status: "success",
amount: "10",
available: true
}, {
id: 1,
code: 10,
barcode: "121212",
status: "success",
amount: "10",
available: true
}];
現在,如果使用下划線,我如何得到以下結果
var c = [{
code: 10,
barcode: "121212",
status: "success"
}, {
code: 10,
barcode: "121212",
status: "success"
}];
(function( property, x, y ) {
var filters = _.pluck( x, property );
var filter = function( obj ) {
return _.pick( obj, filters );
};
return _.map( y, filter );
})( 'name', a, b );
var filters = _.pluck(a, 'name');
var c = _.map(b, function(el) {
return _.pick(el, filters);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.