Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Sintaksis
List.Accumulate(
list as list,
seed as any,
accumulator as function
) as any
Tentang
Mengakumulasi nilai ringkasan dari item dalam daftar yang ditentukan menggunakan akumulator.
-
list: Daftar yang akan diiterasi. -
seed: Nilai akumulasi awal. -
accumulator: Fungsi yang mengambil status saat ini dan item saat ini dan mengembalikan status baru.
Contoh 1
Mengakumulasi nilai ringkasan dari item dalam daftar.
Penggunaan
let
Source = List.Accumulate(
{1, 2, 3, 4, 5},
0,
(runningSum, nextNumber) => runningSum + nextNumber
)
in
Source
Output
15
Contoh 2
Gabungkan setiap kata dalam daftar dengan spasi di antaranya, tetapi jangan sertakan spasi di awal.
Penggunaan
let
Source = List.Accumulate(
{"The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog."},
null,
(fullTextSoFar, nextPart) =>
Text.Combine({fullTextSoFar, nextPart}, " ")
)
in
Source
Output
"The quick brown fox jumps over the lazy dog."
Contoh 3
Buat daftar waktu penyelesaian proses dari tanggal mulai dan daftar waktu proses.
Penggunaan
let
#"Process Duration" =
{
#duration(0,1,0,0),
#duration(0,2,0,0),
#duration(0,3,0,0)
},
#"Start Time" = #datetime(2025, 9, 8, 19, 0, 0),
#"Process Timeline" = List.Accumulate(
#"Process Duration",
{#"Start Time"},
(accumulatedTimes, nextDuration) =>
accumulatedTimes & {List.Last(accumulatedTimes) + nextDuration}
)
in
#"Process Timeline"
Output
{
#datetime(2025, 9, 8, 19, 0, 0),
#datetime(2025, 9, 8, 20, 0, 0),
#datetime(2025, 9, 8, 22, 0, 0),
#datetime(2025, 9, 9, 1, 0, 0)
}