TypeScriptTypy podstawowe
void
Typ zwracany przez funkcje, które nic nie zwracają.
Przykład
#TypeScript
function logProgress(done: number, total: number): void {
const percent = Math.round((done / total) * 100)
console.log(`Postęp: ${percent}%`)
}
const result = logProgress(3, 8)
console.log(result)Wynik
Postęp: 38% undefined
Definicja i zastosowanie
#Typ void oznacza brak użytecznej wartości zwracanej. Funkcja, która tylko coś robi (wypisuje, zapisuje, zmienia stan), a nie zwraca wyniku, ma typ zwracany void.
W praktyce taka funkcja zwraca undefined, ale void komunikuje zamiar: „nie korzystaj z wyniku”. Kompilator zgłosi błąd, jeśli spróbujesz zwrócić z niej konkretną wartość.
W typach funkcji zwrotnych void jest luźniejszy: (item: string) => void pozwala przekazać funkcję, która coś zwraca. Wynik zostanie po prostu zignorowany, dzięki czemu na przykład arr.forEach(x => list.push(x)) jest poprawne.
Składnia
#Składnia
function nazwa(): void {
…
}Więcej przykładów
#TypeScript
const saved: string[] = []
const onSave: (value: string) => void = (value) => saved.push(value)
onSave('Moduł 1')
console.log(saved)Wynik
['Moduł 1']
Dobre praktyki
#- Typ zwracany
voiddopisuj szczególnie w funkcjach publicznych i obsługach zdarzeń. Kod mówi wtedy wprost, że wynik nie ma znaczenia. - Funkcja asynchroniczna bez wyniku ma typ
Promise<void>.
Powiązane hasła
#Widzisz błąd albo brakuje przykładu? Napisz do nas.