javascript - 使用 lodash 将键/值对转换为对象

标签 javascript lodash

我有一组键/值对,我想将它们转换为对象。使用 lodash 执行此操作的最佳方法是什么。

maps: {
  "Recipe1" : ["Sugar", "Milk", "Bread"],
  "Recipe2" : ["Rice", "Salt", "Carrots"] 
}

寻找如下所示的输出

{
  name: "Recipe1",
  ingredients: ["Sugar", "Milk", "Bread"]
},
{
  name: "Recipe2",
  ingredients: ["Rice", "Salt", "Carrots"]
}

最佳答案

在没有 lodash 的情况下,使用 Object.entries() 做起来非常简单, Array.prototype.map() , 一个 destructured parameter , 和 shorthand property names对于返回的对象:

const maps = {
  "Recipe1" : ["Sugar", "Milk", "Bread"],
  "Recipe2" : ["Rice", "Salt", "Carrots"] 
}

const output = Object.entries(maps).map(
  ([name, ingredients]) => ({ name, ingredients })
)

console.log(output)

关于javascript - 使用 lodash 将键/值对转换为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50399034/

相关文章:

javascript - 使用单选按钮切换复选框

Javascript仅将源的交集分配给目标对象

javascript - Lodash _.find 在参数中使用变量不起作用

javascript - 根据预订的时段将可用时隙数组分成 block

javascript - 如何在javascript中迭代并获取包含json响应的数组的值

javascript focus() 方法改变值

javascript - vue.js router-link 不加载组件

javascript - 当 GMap 卫星图像不可用时该怎么办

javascript - 过滤对象键并创建新的嵌套键

javascript - 使用 Lodash 在对象的任何属性值中查找部分字符串