所謂聯合類型就是指:能夠指定多種數據類型,擴大數據類型範圍。大數據
let data: string | number | boolean...
TS並不推薦使用spa
null 和 undefined 是全部類型的子集 有些狀況 即便你定義參數類型 傳入 null 或者 undefined 也不會報錯的code
當你 去編譯 TS 文件 加上後綴 --strictNullChecks blog
好比這樣tsc filesName.ts --strictNullChecks
ip
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」 的參數string
固然想解決此類問題 只須要在參數加上 null 和 undefined 便可it