Büyük Koleksiyon Kopyalama (ARCH3086)
Anahtar typescript.performance.large-collection-copy · Önem info · Kategori performance
Yalnızca birkaç öğeye ihtiyaç varken tüm koleksiyonu diziye dökmek veya spread ile kopyalamak gereksiz bellek tahsisi yapar; akış veya dilimleme tercih edilmelidir.
Hatalı
Bölüm başlığı “Hatalı”function firstThree<T>(source: Iterable<T>): T[] { return [...source].slice(0, 3);}function firstThree<T>(source: Iterable<T>): T[] { const result: T[] = []; for (const item of source) { result.push(item); if (result.length === 3) break; } return result;}Düzeltme
Bölüm başlığı “Düzeltme”Tüm koleksiyonu maddileştirmek yerine akış üzerinde gezerek yalnızca gereken öğeleri alın.