2017-04-05 118 views
0

我对本月在大学课程中学到的TypeScript有所了解。在TypeScript中声明一个表示空集的类型

这可以表示空集吗?

type emptySet=0&1; 

,因为当我尝试这个分配给任何值,即(布尔型,数字,字符串)我得到错误类型。

我不确定是什么0 & 1在打印稿中用其他编程语言表示,这表示“假”或按位操作。

+0

你能展示一个用例吗?我对你想在这里获得成功感到困惑。 – Arg0n

+0

这是HW中的一个理论问题。我认为一个不接受任何值的类型可以定义空集。类型1&0我不确定它在数值方面定义了什么,适合,因为它不接受任何事实 – LidorA

回答

1

我不知道你想达到什么目的,但这是有效的,将意味着“空集”如无物可以是无效的

type EmptySet = void[]; 

const empty: EmptySet = []; // valid 
const notEmpty: EmptySet = [1,2,3]; // not valid 
+0

谢谢。我会尝试重定向这个问题:在我被问及给出一个有限5个元素的例子之前,我会试着重定向这个问题。键入a = 1 | 2 | 3 | 4 | 5似乎是一个合法的答案。所以用同样的方式,我认为1&0可以定义一个不接受任何东西的集合。 – LidorA

0

接受没有什么是void类型。

type emptySet = void; 

let es: emptySet = null; 

也有never类型,它不接受任何东西,甚至null

type emptySet = never; 

let es: emptySet = null; // Error 
相关问题