Back to questions
Middle
1
Знакома ли с типом unknown? Чем он отличается от any?
Companies where asked
Электронные офисные системы
Answer from AI
sobes.tech AI
Тип unknown в TypeScript — это тип, который представляет значение неизвестного типа. Он более строгий, чем any, потому что с переменной типа unknown нельзя напрямую выполнять операции или присваивать её другим типам без проверки.
В отличие от any, который отключает проверку типов и позволяет делать с переменной всё что угодно, unknown требует явного уточнения типа перед использованием, что повышает безопасность кода.
Пример:
let value: unknown = "hello";
// Ошибка: Object is of type 'unknown'.
// console.log(value.length);
if (typeof value === "string") {
console.log(value.length); // теперь безопасно
}
let anything: any = "hello";
console.log(anything.length); // работает без ошибок
Таким образом, unknown полезен, когда нужно принимать значения неизвестного типа, но при этом сохранять строгую типизацию и безопасность.