TS中的unknown类型

简介: TS中的unknown类型

我们可以对 any 进行任何操作,不需要检查类型。

let value:any;
value = ture;
value = 1;
value.length;

没有类型检查就没有意义了,跟写JS一样。很不安全。

unknown

也可以把任何值赋值给 unknown

let value:any;
value = ture;
value = 1;

但是不能调用属性和方法

value.length; // 错误写法

如果需要调用属性和方法,那么你可能需要类型断言

let value:unknown;
value = 'hello';
(value as string).length

再或者使用类型保护

let value:unknown;
value = 'hello';
if (typeof value === 'string') {
  value.length
}

联合类型中的 unknown定义

如果联合类型中有unknown,那么最终得到的都是unknown类型

type U1 = unknown | null;
type U2 = unknown | string;
type U3 = unknown | number;

类型别名 U1,U2,U3 都是 unknown 类型

相关文章
|
JavaScript
vue3 使用element plus 打包时 报错
vue3 使用element plus 打包时 报错
428 0
|
数据采集 监控 机器人
User-Agent 即用户代理
User-Agent 即用户代理
763 2
|
5月前
|
Web App开发 前端开发 JavaScript
前端性能优化利器:图片懒加载实战解析
前端性能优化利器:图片懒加载实战解析
|
3月前
HTTP协议中请求方式GET 与 POST 什么区别 ?
GET和POST的主要区别在于参数传递方式、安全性和应用场景。GET通过URL传递参数,长度受限且安全性较低,适合获取数据;而POST通过请求体传递参数,安全性更高,适合提交数据。
514 2
|
3月前
|
缓存 前端开发 大数据
虚拟列表在Vue3中的具体应用场景有哪些?
虚拟列表在 Vue3 中通过仅渲染可视区域内容,显著提升大数据列表性能,适用于 ERP 表格、聊天界面、社交媒体、阅读器、日历及树形结构等场景,结合 `vue-virtual-scroller` 等工具可实现高效滚动与交互体验。
433 1
|
UED
如何通过 Webpack 实现代码分割?
如何通过 Webpack 实现代码分割?
383 0
|
11月前
|
移动开发 缓存 前端开发
深入理解前端路由:原理、实现与应用
本书《深入理解前端路由:原理、实现与应用》全面解析了前端路由的核心概念、工作原理及其实现方法,结合实际案例探讨了其在现代Web应用中的广泛应用,适合前端开发者和相关技术人员阅读。
|
JavaScript 前端开发
【Vue 3】如何实现动态表单生成器的拖拽功能?
【Vue 3】如何实现动态表单生成器的拖拽功能?
|
前端开发 JavaScript
前端必修之一 彻底理解原型和原型链
【8月更文挑战第2天】理解原型和原型链
238 11
|
JavaScript 前端开发
JavaScript 函数中break,continue,return 的区别
JavaScript 函数中break,continue,return 的区别
186 0