По неизвестной причине getDate
всегда возвращает 1
вместо 28
.Я использую NodeJS 10.6.0 и Typescript 3.2.2.
const lastDay = new Date();
lastDay.setDate(0);
lastDay.setHours(24, 59, 59, 999);
console.log(lastDay, "|", lastDay.getDate()); // 2019-02-28T23:59:59.999Z | 1
Редактировать: Я пытаюсь получить последний день предыдущего месяца за последнюю мс.Тогда setDate(0)
правильно.Что я точно не понимаю, так это то, почему, когда я печатаю время, я получаю 28T23:59:59.999Z
и getDate()
возвращается на следующий день.
Edit2: Эффективное использование getUTCDate
исправляет моипроблема, это остается странным для меня из-за странного способа, которым это реализовано.IMO каждый метод должен быть более четко назван, чтобы избежать такого рода проблем.