Ну, _.isEmpty (new Date ()) всегда будет возвращать true, потому что Object.keys(new Date()).length === 0
.Если вы посмотрите на исходный код функции isEmpty: вы увидите следующее:
...
for (var key in value) {
if (hasOwnProperty.call(value, key)) {
return false;
}
}
return true;
Объект Date не имеет ключа / значений, поэтому он вернет true.
use !_.isDate(...)
может быть лучшей идеей