如何根据A数组将B数组组装为新数组?

let A = ['A', 'B', 'C']

let B = [
  ['1A'],
  ['2A','2C']
]

根据 A 数组将 B 数组组装一个新数组

newArr = [
  ['1A', null, null],
  ['2A', null, '2C']
]

我要的新数组

newArr = [
  ['1A', null, null],
  ['2A', null, '2C']
]
阅读 1.1k
2 个回答
const conv = (schema, source) => source.map(a => {
    const dict = {}
    a.forEach(i => {
        const name = i.at(-1) //  没有给出具体的数据格式,假定和 A 匹配的字符串就是最后一位
        dict[name] = i
    })
    return schema.map(name => dict[name] ?? null)
})

image.png

let A = ['A', 'B', 'C'];
let B = [
  ['1A'],
  ['2A','2C']
];

let newArr = B.map(subArr => A.map(letter => subArr.find(item => item.endsWith(letter)) || null));

console.log(newArr);

image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题