【发布时间】:2020-03-04 21:49:28
【问题描述】:
如何检查变量(是否为数字、字符串、日期、对象等)
为空、空白、未定义还是为空?
以下对于任何日期都失败,lodash isEmpty 总是返回 NotEmpty 作为日期。
if (test == null || test == '' || _.isEmpty(test){
console.log('variable is empty');
}
无论如何,这样做是干净的吗?阅读下面的链接,
【问题讨论】:
-
什么定义了“空”日期?事实上,我认为任何日期对象都不应该在这样的条件下返回 true。
-
您可能不应该在一次检查中处理所有这些情况,而应该准确地确定您需要什么并检查其有效性。例如,如果您要检查有效日期,请使用
lodash.isDate,而不是检查它是否为undefined、null、string、number或其他。 -
我能想到的日期为空的唯一条件是
new Date(0)(距纪元 0 毫秒)。但这绝不会是您在绝大多数大多数情况下必须处理的值。 -
非常需要一个干净的答案来适应日期
-
@Klaycon 任何空、未定义或空的日期
标签: javascript typescript lodash javascript-objects