Closed chuigda closed 2 years ago
目前我们大规模使用 instanceof 来判断类型:
instanceof
但是,根据 这里提供的情报,TypeScript的设计允许把 Object literal 赋值给 TypeScript 的 class,而 instanceof 却是一个纯 JavaScript 的操作,但 TypeScript 偏偏还就认这个 instanceof 的结果。这个地方会炸出很大的问题。什么嘛,类型系统原来这么拉,TypeScript就这啊?
class
目前的计划是把这些个容易出问题的 class 换成 interface,然后砍掉这些 instanceof。后续可能会换掉很多 class,总之现有心理准备。
interface
@flaribbit @Shimogawa @SchrodingerZhu 你们谁来
我决定把这张图封为典中典,每天黑一遍 TypeScript
需要把 fn instanceof Function 改成 typeof fn === 'function' 吗?
fn instanceof Function
typeof fn === 'function'
不用
目前我们大规模使用![图片](https://user-images.githubusercontent.com/29348140/188825201-65d8b463-a675-4c66-90b1-da2ab49913f1.png)
instanceof
来判断类型:但是,根据 这里提供的情报,TypeScript的设计允许把 Object literal 赋值给 TypeScript 的
class
,而instanceof
却是一个纯 JavaScript 的操作,但 TypeScript 偏偏还就认这个instanceof
的结果。这个地方会炸出很大的问题。什么嘛,类型系统原来这么拉,TypeScript就这啊?目前的计划是把这些个容易出问题的
class
换成interface
,然后砍掉这些instanceof
。后续可能会换掉很多class
,总之现有心理准备。