譬如传个对方 obj 给方法,在方法中试图访问 obj.notExists,但 notExists 并不存在,TypeScript 能提前检查到吗?
|
sumanxJan 5, 2018
1
if((obj as any). notExists)?
|
|
azh7138mJan 5, 2018
2
ts 不做运行时检查,全是 ts 写的项目,按道理,能编译就不会有这问题吧
|
|
4
严格模式的 ts 是可以的,不要写 any 之类的,ide 会提示的
|
|
5
它只是做类型检查,毕竟真正的 obj 什么样它是不知道的
|
|
6
既然用了 TypeScript 就尽量不要用 Any 这种弱类型了,本来目的就是利用 TS 强类型的检查嘛. 对于你的问题,首先你的 obj 应该要是一个强类型对象,而不是 any,这样才能利用 TS 的编译检查。如果你的 obj 是未知类型( any ),那么直接利用 js 的 undefined 类型判断就好了。
|
|
7
明白了,非常感谢大家,感觉要显示申明类型好麻烦,但代码多了不做检查 hold 不住...
|
|
KilerdJan 5, 2018
8
用 ts 还要用 any 你不如用回 js 算了。
|