函数声明上的打字稿问号

时间:2019-11-27 11:58:09

标签: javascript typescript class interface

我最近在打字稿中遇到了一个有趣的事件,当时我找不到在线直接答案。

constant

现在,我知道这是一个简单的接口,它定义了可以实现它的变量,类等的类型,并且表明optionTwo和optionThree是可选的参数/函数。

但是,这种情况如何?

interface IClassInterface {
    optionOne: boolean;
    optionTwo?: string;
    optionThree?: () => void;
}

如果声明了函数,为什么打字稿允许在此类内声明可选函数?如果从class ClassName { classFunctionOne() { } classFunctionTwo?() { console.log("This is function two") } } 中调用它,怎么可能是一个已声明且可能未定义的可选函数?有这种情况的用例吗?

0 个答案:

没有答案