字符串和字符串[]的交集

时间:2018-04-10 15:49:43

标签: javascript typescript

这些类型的交集是什么:

T1 = string
T2 = string[]

什么是T3 = T1 && T2

undefined还是string?当我尝试在VisualStudio代码中运行它时,我得到string类型,但它不能是undefined或其他什么?

1 个答案:

答案 0 :(得分:1)

首先,使用单个&定义交叉点类型。当您执行type T3 = string && string[]时,由于逻辑AND的工作原理,右侧表达式的计算结果为string,因此您的编辑器会将新类型显示为string。< / p>

要回答您的问题,type T3 = string & string[]将创建既不 string 也不 undefined的类型。将鼠标悬停在T3类型的变量上将显示它只是这两种类型的交集。

但是,使用类似的类型是没有意义的,因为某些内容不能同时为stringstring[],因此您无法为其分配任何内容。