Я работаю со скриптом приложений.
Я анализирую строки листа в объектах и пытаюсь их отфильтровать по временичтобы получить самые последние записи за последний час
[{relativeRow=257.0, ME=, Index=false, FROM=1.xxx, absoluteRow=258.0, Timestamp=Fri Sep 20 14:17:50 GMT-04:00 2019, CONVERSATION=R:Yes!}, {relativeRow=256.0, ME=, Index=false, FROM=1xxx, absoluteRow=257.0, Timestamp=Fri Sep 20 12:18:00 GMT-04:00 2019, CONVERSATION=R:yes yes}, {relativeRow=255.0, ME=, Index=false, FROM=xxx, absoluteRow=256.0, Timestamp=Thu Sep 19 11:54:29 GMT-04:00 2019, CONVERSATION=R:Yes1}]
У меня есть:
var MILLIS_PER_HOUR = 1000 * 60 * 60; // 60 MINUTES
var now = new Date()
var oneHouragoTS = now.getTime() - MILLIS_PER_HOUR;
Logger.log(oneHouragoTS);
var pendingRows = descending.filter(function (row) {
Logger.log(row['Timestamp']);
var rowDate = new Date(row['Timestamp'])
var rowTS = rowDate.getTime()
Logger.log('rowTS');
Logger.log(rowTS);
Logger.log('oneHouragoTS');
Logger.log(oneHouragoTS);
var diff = rowTS - oneHouragoTS ;
Logger.log('diff');
Logger.log(diff);
return (diff>0)
});
Вывод:
[19-09-20 15:40:54:016 EDT] getResponsesOverLastHour
[19-09-20 15:40:54:017 EDT] 1.569004854016E12
[19-09-20 15:40:54:017 EDT] Fri Sep 20 14:17:50 GMT-04:00 2019
[19-09-20 15:40:54:018 EDT] rowTS
[19-09-20 15:40:54:018 EDT] 1.56900347E12
[19-09-20 15:40:54:019 EDT] oneHouragoTS
[19-09-20 15:40:54:019 EDT] 1.569004854016E12
[19-09-20 15:40:54:020 EDT] diff
[19-09-20 15:40:54:020 EDT] -1384016.0
[19-09-20 15:40:54:020 EDT] Fri Sep 20 12:18:00 GMT-04:00 2019
[19-09-20 15:40:54:021 EDT] rowTS
[19-09-20 15:40:54:021 EDT] 1.56899628E12
Я запускаю это 30-40 минут после создания строки, поэтому я предполагаю, что разница будет положительной, и строка вернется, однако разница будет отрицательной, и фильтрация строк, созданных в течение 1 часа, возвращает пустой массив
Как я могуисправить это?