映射两个数组以创建一个数组

Mapping two arrays to create one array

我有两个数组,我想合并到一个数组中,但是,这些数组有些复杂,我无法理解....简而言之,我有一组“最后一条消息”来自一次对话,我有一系列来自该对话的参与者。

“消息”数组如下所示

messageArray =
[
  [
    { message } <=== convo 1
  ],
  [
    { message } <===  convo 2
  ],
]

“参与者”数据数组如下所示

participantArray = 
[
   [
     {participant},{participant} <=== participants in convo 1
   ],
   [
     {participant},{participant},{participant} <=== participants in convo 2
   ]
]

我想要的是

mergedArray =
[
  [ { message }, [ { participant }, { participant  } ]] <=== conversation 1
],
[
  [ { message }, [ { participant }, { participant  } ]] <=== conversation 2
]

根据您的描述,您可以映射第一个数组,在第二个数组中使用索引获取关联项。

例如

const messages = [
  ["Helo World, Messsage One"],
  ["Goodbye, fair well"],
];

const users = [
   ["Bob", "Jane", "Harry"],
   ["Mike", "John", "Amanda"]
];

const joined = messages.map((m, ix) => {
  return [m[0], users[ix]];
});

console.log(joined);