TypeScipt中unknown与any区别
关于Unknown的详细具体介绍,文末推荐的文章已是最好,这里不再啰嗦。文章只说下两个类型的根本区别。
any是顶级类型,但弊端就是滥用这个类型,实际上就丧失了类型安全,unknown是为了弥补这个问题。
so。any类型安全为无,而unknown在具体使用时会很严格。
当我们无法告诉编辑器a一定是number,TSC不会纵容我们肆意使用toString方法的。但any就可以。
unknown类型的数据在实际进行操作时,必须进行类型检查,自行判断,缩小类型范围才可以操作,而any却不可以。
类型判断
如上,返回类型实际上我们写的是value is number
,为何不写boolean? 试试。so,这里这么写,是为了告诉TSC,类型安全了。