
Тип unknown в typescript
Зачем нужен unknown если есть any?
1. Компилятор не даст присвоить типизированной переменной значение типа unknown,
такой код вызовет ошибку
2. Компилятор не даст вызвать метод или взять свойство переменной типа unknown без проверки на тип
Таким образом тип unknown, в отличие от any предотвращает ошибки на раннем этапе
#js #typescript
Зачем нужен unknown если есть any?
1. Компилятор не даст присвоить типизированной переменной значение типа unknown,
такой код вызовет ошибку
let x: unknown = 'string';
let string: string = x; // Ошибка
2. Компилятор не даст вызвать метод или взять свойство переменной типа unknown без проверки на тип
let array: unknown = [1,2,3];
array.map(item => item); // Ошибка
array.length; // Ошибка
if (array instanceof Array) {
array.map(item => item); // Нет ошибки
array.length; // Нет ошибки
}
Таким образом тип unknown, в отличие от any предотвращает ошибки на раннем этапе
#js #typescript