Compartir a través de


List.TransformMany

Sintaxis

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

Acerca de

Devuelve una lista cuyos elementos se proyectan a partir de la lista de entrada.

La función collectionTransform transforma cada elemento en una lista intermedia y la función resultTransform recibe el elemento original, así como un elemento de la lista intermedia para construir el resultado final.

collectionTransform tiene la firma (x as any) as list => ..., donde x es un elemento de list. La función resultTransform proyecta la forma del resultado y tiene la firma (x as any, y as any) as any => ..., donde x es un elemento de list y y es un elemento de la lista generada cuando se pasa x a collectionTransform.

Ejemplo 1

Aplana una lista de personas y sus mascotas.

Uso

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

Salida

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