Achatar uma lista

Crie uma função que receba um array contendo valores primitivos e arrays aninhados em qualquer profundidade. Retorne um único array plano e unidimensional contendo todos os valores que não sejam arrays, na mesma ordem da esquerda para a direita.

  • Quando um item for um array, inclua cada um de seus itens e aplique a mesma regra recursivamente.
  • Quando um item não for um array, inclua-o sem alterações.

Exemplos

flattenList([1, "2", [3, [4, 5], 6], 7, 8]) // [1, "2", 3, 4, 5, 6, 7, 8]

flattenList([1]) // [1]

flattenList([]) // []