Доки по разработке
This project is maintained by teniryte
unknown и безопасные операцииПринципы
unknown запрещает прямые операции до уточнения типа: нельзя складывать или вызывать методы без проверки.unknown помогает не пропустить в рантайм неожиданные формы.Пример
function fetchData(url: string): unknown {
return 5 as unknown;
}
const data = fetchData('test');
// const val = data + 5; // Ошибка без проверки типа
function isDate(date: unknown): date is Date {
return date instanceof Date;
}
Практика
unknown через typeof, instanceof, Array.isArray или пользовательские guards.unknown.unknown на any: потеряете безопасность, а ошибки обнаружатся слишком поздно.