Typsichere Hilfsfunktionen für häufig verwendete Array-Operationen in TypeScript.
emptyArray: Leeres Array mit bestimmter Größe erzeugen
Erzeugt ein Array mit fester Länge für Initialisierung, Platzhalter oder Mock-Daten.
function emptyArray(size: number): Array<undefined> { return Array(size).fill(undefined);}chunkArray: Array in Blöcke aufteilen
Teilt ein Array in Blöcke der angegebenen Größe.
function chunkArray<T>(array: T[], size: number): T[][] { if (size <= 0) return []; return Array.from({ length: Math.ceil(array.length / size) }, (_, i) => array.slice(i * size, (i + 1) * size), );}Mit Array.from lässt sich die benötigte Anzahl an Blöcken erzeugen, während gleichzeitig das ursprüngliche Array gesliced wird.
Beispiel:
const numbers = [1, 2, 3, 4, 5, 6, 7];
const chunks = chunkArray(numbers, 3);
console.log(chunks);// Result: [[1, 2, 3], [4, 5, 6], [7]]filterNonNull: null und undefined typsicher entfernen
Entfernt null oder undefined etwa aus API-Antworten und verengt den TypeScript-Typ von T | null auf T.
function filterNonNull<T>(array: Array<(T | null | undefined)>): Array<T> { return array.filter((v): v is T => v != null);}unsafeShuffle: Array zufällig mischen
Mischt ein Array mit dem Fisher-Yates-Algorithmus. Dabei handelt es sich um eine destruktive Operation, die das ursprüngliche Array verändert.
function unsafeShuffle<T>(array: T[]): T[] { for (let i = array.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [array[i], array[j]] = [array[j], array[i]]; }
return array;}
hsb.horse