共用方式為


List.TransformMany

語法

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

關於

傳回清單,其清單項目是從輸入清單投影而來。

collectionTransform 函式會將每個元素轉換成中繼清單,而 resultTransform 函式會接收原始元素以及中繼清單中的項目,以便建構最終結果。

collectionTransform 函式具有簽章 (x as any) as list => ...,其中 xlist 中的元素。 resultTransform 函式會投影結果的形狀,並具有簽章 (x as any, y as any) as any => ...,其中 xlist 中的元素,而 y 是透過將 x 傳遞至 collectionTransform 所產生的清單元素。

範例 1

壓平合併個人和其寵物的清單。

使用方式

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

輸出

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