我在Angular代码/项目上工作,那里有一个变量定义,例如
@Input() public someVariable: boolean | false;
我不确定,“ |”的含义是什么以上行代码中的字符?我曾尝试在Google / SO中查找此内容,但找不到有关此内容的任何资源。
任何帮助将不胜感激!
这是非常奇怪的代码。这意味着someVariable
可以是boolean
或文字类型false
。但是,当然false
is是布尔值,所以它等效于just
@Input() public someVariable: boolean;
更多在这里:Union types。
更典型的例子是:
public foo: string | number;
...这意味着foo
可以包含字符串或数字,但不能(例如)包含对象引用或布尔值。
@ Input()public someVariable:布尔值|错误;
这意味着可以将someVariable分配为boolean或false,而不能分配其他任何类型。那些类型以外的任何类型都会引起ts编译器的投诉
'|' (管道运算符)在这种情况下在语义上是“ OR”