Typujesz parametry i wartość zwracaną, a TypeScript obsługuje parametry opcjonalne, domyślne i rest.
ts
(): { a + b; }
(): {
title ? : name;
}
(): { n + by; }
(): {
nums.( a + n, );
}
Typujesz parametry i wartość zwracaną, a TypeScript obsługuje parametry opcjonalne, domyślne i rest.
(): { a + b; }
(): {
title ? : name;
}
(): { n + by; }
(): {
nums.( a + n, );
}
Możesz opisać sygnaturę funkcji jako typ — przydatne dla callbacks i zmiennych przechowujących funkcje:
type BinaryOp = (a: number, b: number) => number;
const multiply: BinaryOp = (a, b) => a * b; // params inferred from BinaryOp
// callback parameter
function apply(op: (x: number) => number, val: number) { return op(val); }
function parse(x: string): number;
function parse(x: number): string;
function parse(x: any): any { return typeof x === "string" ? +x : String(x); }
Dokładne typowanie funkcji to jądro wartości TypeScriptu — wywołujące funkcje otrzymują sprawdzane argumenty i znane typy zwracane, parametry opcjonalne/domyślne modelują elastyczność świata rzeczywistego, a aliasy typów funkcji sprawiają, że kod wyższego rzędu (callbacks, handlery zdarzeń, middleware) jest sam-dokumentujący się i bezpieczny.