连接多个对象中的值

Join values within multiple objects

我得到了下面的对象数据,我需要将它们连接在一起,如果 "foo" 和 "bar" 始终具有相同的子元素,我该如何实现下面的输出。

{
  "foo": {
    "aaa": 1,
    "bbb": 2,
    "ccc": 3,
  },
  "bar:" {
    "aaa": "One",
    "bbb": "Two",
    "ccc": "Three",
  }
}

预期输出为

<li>1 One</li>
<li>2 Two</li>
<li>3 Three</li>

你需要的是一个相当复杂的对象操作表达式。假设您将对象存储在 o 变量中,此表达式多次调用 Object.keysArray.prototype.map 会将您的对象转换为粘合对应的 属性 值的数组:

const entries = Object.keys(o[Object.keys(o)[0]]).map(property => Object.keys(o).map(p => o[p][property]).join(' '));

试试这个

var foobar = {
  "foo": {
    "aaa": 1,
    "bbb": 2,
    "ccc": 3
  },
  "bar": {
    "aaa": "One",
    "bbb": "Two",
    "ccc": "Three"
  }
};

let mappedArray = Object.keys(foobar.bar).map(xxx=> "<li>" + foobar.foo[xxx] + " " + foobar.bar[xxx] + "</li>");
console.log(mappedArray.join("\n"));