从嵌套数组中提取第一个元素到新数组Angular中



这是我的多维数组:

newItem = [['ID', ['item 1A','item 1B','item 1C']], ['Address',['item 2A','item 2B','item 2C']], ['Req',['item 3A', 'item 3B', 'item 3C']]]

我试图提取它到一个新的数组在以下格式:

newArr = [['item 1A', 'item 2A', 'item 3A'], ['item 1B', 'item 2B', 'item 3B'], ['item 1C', 'item 2C', 'item 3C']]

尝试了map, flat等几种方法,但无法达到预期的结果。

在这里寻求帮助。

你想要的是矩阵的转置,你可以简单地使用map来实现这一点:

const newItem = [
['ID', ['item 1A', 'item 1B', 'item 1C']],
['Address', ['item 2A', 'item 2B', 'item 2C']],
['Req', ['item 3A', 'item 3B', 'item 3C']]
]
const matrix = newItem.map(item => item[1]) // turn the array into matrix
const newArr = matrix[0].map((_, i) => matrix.map(item => item[i])) // transpose the matrix
console.log(newArr)

最新更新