在执行 ETL 以将数据从 Sybase 数据库获取到 MongoDB 后端时,我可以这样做:
if (data.hire_date) staffProfile.hireDate = data.hire_date;
此方法可防止将空值填充到 MongoDB 中。如果data.hire_date
有一个值,那么它将被放入staffProfile.hireDate
. 但是,如果没有值,它实际上会被忽略。
现在,我想用三元表达式创建相同的结果。就像是:
staffProfile.hireDate = data_hireDate ? data_hireDate : null;
但是,我不想在null
这里使用,因为当我这样做时,我最终会在数据库中得到一堆空值。我的问题实际上归结为两件事:在我的第一个示例中,在“如果”的情况下,当找不到值时,实际上发生了什么?是结果undefined
吗?我可以在三元语法示例中使用什么来有效地编写相同的条件检查 - 直到值不存在时传递的内容?
这将是我的第一个示例的等效表达式吗?
staffProfile.hireDate = data_hireDate ? data_hireDate : undefined;