Javascript 基于选定关键帧从对象列表中提取对象

Javascript 基于选定关键帧从对象列表中提取对象,javascript,lodash,Javascript,Lodash,我有一份炸薯条清单。e、 g var Fruits={ "Banana": { "Price": "50", "quility": "good" }, "Mango": { "Price": "100", "quility": "best" }, "Orange": { "Price": "80",

我有一份炸薯条清单。e、 g

var Fruits={
        "Banana": {
            "Price": "50",
            "quility": "good"
        },
        "Mango": {
            "Price": "100",
            "quility": "best"
        },
        "Orange": {
            "Price": "80",
            "quility": "good"
        },
        "Apple": {
            "Price": "150",
            "quility": "best"
        }
    }
还有一个数组,其中包含我要提取的水果名称。e、 g

var SpecificFruits = ["Banana", "Mango"]
基于上面的数组,我想提取水果对象,并希望得到如下结果

var results={
        "Banana": {
            "Price": "50",
            "quility": "good"
        },
        "Mango": {
            "Price": "100",
            "quility": "best"
            "quility": "best"
        }
    }

如果您有任何帮助/建议,我们将不胜感激。

您可以使用
方法。选择
方法获取对象和键数组,并从数组返回具有属性的新对象

var Fruits={“香蕉”:{“价格”:“50”,“质量”:“好”},“芒果”:{“价格”:“100”,“质量”:“最佳”},“橙子”:{“价格”:“80”,“质量”:“好”},“苹果”:{“价格”:“150”,“质量”:“最佳”}
var SpecificFriews=[“香蕉”、“芒果”]
常量结果=uu.pick(水果、特殊水果);
console.log(结果)

您可以使用
\拾取
方法获取对象和键数组,并从数组返回具有属性的新对象

var Fruits={“香蕉”:{“价格”:“50”,“质量”:“好”},“芒果”:{“价格”:“100”,“质量”:“最佳”},“橙子”:{“价格”:“80”,“质量”:“好”},“苹果”:{“价格”:“150”,“质量”:“最佳”}
var SpecificFriews=[“香蕉”、“芒果”]
常量结果=uu.pick(水果、特殊水果);
console.log(结果)

您只需执行以下操作即可实现此目的:

let result = {}
SpecificFruits.forEach((fruit) => {
  if(Fruits[fruit]) {
    result[fruit] = Fruits[fruit]
  }
})

您只需执行以下操作即可实现此目的:

let result = {}
SpecificFruits.forEach((fruit) => {
  if(Fruits[fruit]) {
    result[fruit] = Fruits[fruit]
  }
})

您可以通过传递初始对象和所需的属性数组来使用
\拾取
方法

var Fruits={“香蕉”:{“价格”:“50”,“质量”:“好”},“芒果”:{“价格”:“100”,“质量”:“最佳”},“橙子”:{“价格”:“80”,“质量”:“好”},“苹果”:{“价格”:“150”,“质量”:“最佳”}
var SpecificFriews=[“香蕉”、“芒果”]
var结果=u.pick(水果、特殊水果);
控制台日志(结果)

您可以通过传递初始对象和所需的属性数组来使用
\拾取
方法

var Fruits={“香蕉”:{“价格”:“50”,“质量”:“好”},“芒果”:{“价格”:“100”,“质量”:“最佳”},“橙子”:{“价格”:“80”,“质量”:“好”},“苹果”:{“价格”:“150”,“质量”:“最佳”}
var SpecificFriews=[“香蕉”、“芒果”]
var结果=u.pick(水果、特殊水果);
控制台日志(结果)
ES6 您还可以使用和来获得所需的结果

演示

var Fruits={“香蕉”:{“价格”:“50”,“质量”:“好”},“芒果”:{“价格”:“100”,“质量”:“最佳”},“橙子”:{“价格”:“80”,“质量”:“好”},“苹果”:{“价格”:“150”,“质量”:“最佳”},
具体水果=[“香蕉”、“芒果”];
让result=SpecificFruits.reduce((r,v)=>Object.assign(r,(Fruits[v]?{[v]:Fruits[v]}:{})),{});
console.log(结果)
.as控制台包装{最大高度:100%!重要;顶部:0;}
ES6 您还可以使用和来获得所需的结果

演示

var Fruits={“香蕉”:{“价格”:“50”,“质量”:“好”},“芒果”:{“价格”:“100”,“质量”:“最佳”},“橙子”:{“价格”:“80”,“质量”:“好”},“苹果”:{“价格”:“150”,“质量”:“最佳”},
具体水果=[“香蕉”、“芒果”];
让result=SpecificFruits.reduce((r,v)=>Object.assign(r,(Fruits[v]?{[v]:Fruits[v]}:{})),{});
console.log(结果)
.as console wrapper{max height:100%!important;top:0;}
“任何帮助/建议都将不胜感激。”我的建议是尝试解决方案,如果您没有得到预期的结果,并且在一些研究后找不到答案,请提出问题。“任何帮助/建议都将不胜感激。”我的建议是尝试一个解决方案,如果你没有得到预期的结果,并且在一些研究之后找不到答案,那么就提出一个问题。
var SpecificFruits = ["Banana", "Mango"];

var result = {};
SpecificFruits.forEach(function(fruit) {
  if( fruits[ fruit ] ){
    result[ fruit ] = fruits[fruit];
  }
});