Свести массив массива и объединить с другим массивом в машинописи

Вопрос задан: 7 месяцев назад Последняя активность: 7 месяцев назад
up 0 down

В соответствии с этот в статье вы можете сгладить массив, используя concat.

Например;

const nestedArrays: Person[][] = [
    [
        {firstName: "Andrew", lastName: "Smith"},

    ],
    [
        {firstName: "Chris", lastName: "Cawlins"},
    ],
    [
        {firstName: "Susan", lastName: "Sarandon"},
    ]
]

может быть преобразован в

const flattenedArray: Person[] = [
    {firstName: "Andrew", lastName: "Smith"},
    {firstName: "Chris", lastName: "Cawlins"},
    {firstName: "Susan", lastName: "Sarandon"},
]

используя

const flattenedArray = [].concat(...nestedArrays);

У меня есть дополнительный массив, как показано ниже,

const additional = ["extra1", "extra2"];

Мой конечный результат должен быть

[
 ["extra1", "extra2"],
 [{firstName: "Andrew", lastName: "Smith"}],
 [{firstName: "Chris", lastName: "Cawlins"}],
 [{firstName: "Susan", lastName: "Sarandon"}],
]

Могу ли я добиться этого, используя concat в машинописи? Или есть другой метод, который я бы использовал?

1 ответ

up 0 down

Вам не нужно ничего расплющить, просто используйте unshift предварять:

const nestedArrays: Person[][] = [
    [
        {firstName: "Andrew", lastName: "Smith"},

    ],
    [
        {firstName: "Chris", lastName: "Cawlins"},
    ],
    [
        {firstName: "Susan", lastName: "Sarandon"},
    ]
]
const additional = ["extra1", "extra2"];
const combination = nestedArrays.unshift(additional);