将构造函数中的默认值设置为undefined是一种好习惯吗?

时间:2019-07-16 08:22:35

标签: javascript typescript

我有一个看起来像这样的代码:

constructor(data) {
    this.date = data.date && new Date(data.date) || undefined
}

添加|| undefined是否是一种好习惯?如果date.date为空,则此表达式将返回null。我说的对吗?

1 个答案:

答案 0 :(得分:0)

  

如果date.date将为空,则此表达式将返回null。我说的对吗?

否。

如果data.date是一个伪造的值,它将分配data.date。可能是0null""false或…

明确将其设置为undefined将至少使其一致,这对于以后测试该值的代码很重要。