问题描述
这是一个非常简单的问题,所以我会简短一些。这两个代码片段有什么不同吗?
class Test {
constructor(value?: number = 5) { }
}
class Test {
constructor(value: number = 5) { }
}
我的假设是没有,因为包含默认初始化值隐式地使它也是一个可选参数。如果确实如此,是否最好包含问号?
解决方法
你的第一个片段实际上是一个类型错误。
Parameter cannot have question mark and initializer.(1015)
所以我认为应该解决它。
See playground