Как получить начало (00:00:00) и конец (23:59:59) сегодняшнего дня в метке времени (GMT)? Компьютер использует местное время.
javascript
Bdfy
источник
источник
var end = new Date(start.getTime());
чтобы у вас был одинаковый момент времени - если вы меняете даты между начальной и конечной инициализацией - это может произойти - просто хорошая привычкаsetUTCHours
вместо того,setHours
чтобы получить Универсальное времяsetHours
опасно, поскольку оно устанавливает локальные часы вместо часов UTC.Использование momentjs библиотеки, это может быть достигнуто с
startOf()
иendOf()
методами на текущем объекте даты в тот момент, передавая строку в'day'
качестве аргументов:Местное время по Гринвичу:
Для UTC:
источник
.toDate()
в конце, чтобы получить дату.var end = moment().endOf('day').toDate();
.unix()
в конце, чтобы получить метку времени Unix в секундах :) вот так:moment().startOf('day').unix()
moment(new Date()).endOf("day");
, не работает, ноmoment().endOf("day");
работает.moment-timezone
и сделать это:moment().tz('America/Chicago').startOf('day').toDate()
.Используя библиотеку luxon.js , этого можно достичь с помощью методов startOf и endOf, передав в качестве параметра значение «день».
и вы можете спросить, почему не moment.js , ответ здесь за это.
источник
В MomentJs мы можем объявить это как:
источник
Если вас просто интересуют временные метки в GMT, вы также можете сделать это, что удобно для разных интервалов (час:
1000 * 60 * 60
12 часов:1000 * 60 * 60 * 12
и т. Д.)источник
К вашему сведению (объединенная версия Tvanfosson)
// как пользоваться
* это применимо для Мгновенного типа времени на Java8, который автоматически конвертирует ваше местное время в зависимости от вашего региона (если вы планируете написать глобальное приложение)
источник
Я предпочитаю использовать библиотеку date-fns для манипулирования датами. Это действительно отличный модульный и последовательный инструмент. Вы можете получить начало и конец дня следующим образом:
источник