所谓联合类型就是指:可以指定多种数据类型,扩大数据类型范围。
let data: string | number | boolean...
TS并不推荐使用
null 和 undefined 是所有类型的子集 有些情况 即使你定义参数类型 传入 null 或者 undefined 也不会报错的
当你 去编译 TS 文件 加上后缀 --strictNullChecks
比如这样tsc filesName.ts --strictNullChecks
var func = function (value: number | string) {
var type = typeof value;
if (typeof value === "number") {
return "your number is " + value;
}
else if (typeof value === "string") {
return "your name is " + value;
}
};
var result = func(null);
意思为类型“null”的参数不能赋值给类型 “string | number” 的参数
当然想解决此类问题 只需要在参数加上 null 和 undefined 即可
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。