@just_letov

Как правильно сделать вывод и задать условия для цикла groovy?

61b0a8cdc9065092032480.jpeg

Суть вопроса в том, что есть определенный массив данных,в нем есть значение с датами(таймстеп в миллисекундах), нужно построить условия для цикла которые позволят найти пользователей получивших (
что-то) до определенного момента времени.
Формат вывода должен быть
Имя:
Дата получения:
Так вот в чем же вопрос, как сделать такой формат вывода и какое условие использовать для цикла(чтобы их найти).
Надеюсь все правильно сформулировал)
  • Вопрос задан
  • 87 просмотров
Решения вопроса 1
black1277
@black1277
Вольный стрелок
Не зная точный формат входных данных(массив объектов или массив массивов или ещё как) невозможно точно ответить. Ну приведу решение для одного из вариантов:
const startDate = new Date("2019-01-01") // ключевая дата
const inTmStamp = startDate.getTime()
const data = [
['Anton', 1352300800000],
['Igor', 1546300800000],
['Vasiliy', 1559300809800],
['Stephan', 1546300800000],
['Jose', 1446300800000],
]
function leadZero(str){ // добавляет ноль спереди, если цифра одна
    return String(str).length<2 ? '0'+str : str
}
function formatTime(dt){
    // нумерация месяцев с 0, поэтому +1
    return dt.getFullYear() + '-' + leadZero(dt.getMonth()+1) + '-' + leadZero(dt.getDay())
}
const res = data.filter(arr => arr[1] < inTmStamp).map(arr => {
    const dt = new Date(arr[1])
    return {
        'Дата создания':  formatTime(dt),
        'Сотрудник': arr[0]
    }
})
console.log(JSON.stringify(res))
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы