Od wersji 4.9 mamy do dyspozycji w TypeScript nowe słowo kluczowe - satisfies
.
Z jego pomocą możemy upewnić się, że dana wartość pasuje do wskazanego typu, bez zmiany jej typu (tak, jak to się dzieje w przypadku rzutowania z użyciem słowa as
).
Będzie to bardzo przydatne w momencie, gdy nie chcemy przypisać konkretnego typu do zmiennej, ani użyć rzutowania z uwagi na to, że mamy do dyspozycji mniej precyzyjny typ niż zainferowana wartość.
Kod po prawej obrazuje różnicę pomiędzy rzutowaniem, typowaniem zmiennej, a zastosowaniem słowa satisfies
.
Podsumowując: użycie satisfies
nie nadpisuje zainferowanego przez TS typu, a jedynie upewnia się, że pasuje on do typu wskazanego po tym słowie kluczowym. Jeżeli zainferowany typ, jest bardziej precyzyjny, niż ten, którym dysponujesz, to użycie satisfies
pozwoli Ci zachować tą precyzję, a jednocześnie zabezpieczy przed pomyłkami.