diff --git a/app/releases.js b/app/releases.js index 731add8..c975fe5 100644 --- a/app/releases.js +++ b/app/releases.js @@ -17,8 +17,12 @@ export function selectReleasesToDelete(releases, keepCount) { const time = Date.parse(release?.created_at) return Number.isNaN(time) ? 0 : time } - const sorted = [...releases].sort((a, b) => createdTime(b) - createdTime(a)) - return sorted.slice(keepCount) + // 先一次性計算每筆的時間戳,避免在排序比較中重複呼叫 Date.parse。 + return releases + .map((release) => ({ release, time: createdTime(release) })) + .sort((a, b) => b.time - a.time) + .map((entry) => entry.release) + .slice(keepCount) } /**