Compartilhar via


List.TransformMany

Sintaxe

List.TransformMany(list as list, collectionTransform as function, resultTransform as function) as list

Sobre

Retorna uma lista cujos elementos são projetados com base na lista de entrada.

A função collectionTransform transforma cada elemento em uma lista intermediária e a função resultTransform recebe o elemento original, bem como um item da lista intermediária para construir o resultado final.

A função collectionTransform tem a assinatura (x as any) as list => ... em que x é um elemento em list. A função resultTransform projeta a forma do resultado e tem a assinatura (x as any, y as any) as any => ..., em que x é um elemento em list e y é um elemento da lista gerado passando x para collectionTransform.

Exemplo 1

Nivele uma lista de pessoas e seus animais de estimação.

Usage

List.TransformMany(
    {
        [Name = "Alice", Pets = {"Scruffy", "Sam"}],
        [Name = "Bob", Pets = {"Walker"}]
    },
    each [Pets],
    (person, pet) => [Name = person[Name], Pet = pet]
)

Saída

{
    [Name = "Alice", Pet = "Scruffy"],
    [Name = "Alice", Pet = "Sam"],
    [Name = "Bob", Pet = "Walker"]
}