Учитывая объект даты, как получить первый день своего предыдущего месяца в JavaScriptНайти первый день предыдущего месяца в JavaScript
ответ
function firstDayInPreviousMonth(yourDate) {
var d = new Date(yourDate);
d.setDate(1);
d.setMonth(d.getMonth() - 1);
return d;
}
EDIT: Хорошо ... Я определенно узнал что-то здесь. Я думаю, что это самое простое решение, которое охватывает все случаи (и да, это действительно работает на январь):
function firstDayInPreviousMonth(yourDate) {
return new Date(yourDate.getFullYear(), yourDate.getMonth() - 1, 1);
}
Обратите внимание, что это будет FAIL для чего-то вроде: firstDayInPreviousMonth (новая дата («31 марта 2009»)). См. Комментарии по адресу: http://stackoverflow.com/questions/499838/javascript-date-next-month – Shog9
Это не сработает, если он установит (1) перед выполнением setMonth() –
Да, это работает хорошо. – Shog9
Следующая должно работать:
now = new Date();
if (now.getMonth() == 0) {
current = new Date(now.getFullYear() - 1, 11, 1);
} else {
current = new Date(now.getFullYear(), now.getMonth() - 1, 1);
}
, имея в виду, что месяцы нуль- на основе так декабрь вместо 12.
Но, как уже отмечалось, в месяц обручи, даже как часть атомного конструктора, так что следующий также возможно:
now = new Date();
firstDayPrevMonth = new Date(now.getFullYear(), now.getMonth() - 1, 1);
Мне нравится этот подход, но ваше решение на самом деле неверно. Когда getMonth() == 1, месяц - февраль.Вы хотите проверить getMonth() == 0, и даже это не требуется, потому что конструктор Date принимает отрицательные значения и работает правильно. – Prestaul
Вы пренебрегаете тем фактом, что setMonth будет обертывать значения. Ответ Престола отлично работает в январе. – overslacked
Да, но не для возврата к месяцу, где, к сожалению, число дней меньше. Лучше строить новую дату атомарно, а не по частям. – paxdiablo
Мне это нравится. Это не может быть кратчайшим, но подчеркивает некоторые функции методы SETDATE() по дате() объектов, которые не все знакомы с:
function firstDayPreviousMonth(originalDate) {
var d = new Date(originalDate);
d.setDate(0); // set to last day of previous month
d.setDate(1); // set to the first day of that month
return d;
}
Он использует тот факт, что .setDate (0) изменит дату, чтобы указать на последний день предыдущего месяца, в то время как .setDate (1) изменит ее (далее), чтобы указать на первый день этого месяца. Это позволяет основным Javascript-библиотекам делать тяжелый подъем.
Вы можете увидеть working Plunk here.
Это поможет получить предыдущий месяц первой и последней даты.
function getLastMonth(){
var now = new Date();
var lastday = new Date(now.getFullYear(), now.getMonth(), 0);
var firstday = new Date(lastday.getFullYear(), lastday.getMonth(), 1);
var lastMonth = firstday.getDate()+'/'+(firstday.getMonth()+1)+'/'+firstday.getFullYear()+' - '+lastday.getDate()+'/'+(firstday.getMonth()+1)+'/'+lastday.getFullYear();
return lastMonth;
}
- 1. в первый день месяца
- 2. Выберите первый день предыдущего месяца в (DB2) SQL
- 3. Получить первый день следующего и предыдущего месяца в JSTL
- 4. Как получить первый день предыдущего месяца Datetime с Dartlang
- 5. выберите первый день предыдущего месяца из записи на сервере sql
- 6. получить первый и последний день предыдущего месяца JQuery
- 7. Первый и последний день текущего месяца
- 8. Date.UTC() возвращает последний день предыдущего месяца, а getUTCFullYear(), getUTCMonth() возвращает правильно первый день месяца правильного
- 9. NSDate за первый день месяца
- 10. Углерод - получить первый день месяца
- 11. Получить последний день предыдущего месяца с использованием Javascript или MomentJS
- 12. Crystal Reports - последний день предыдущего месяца
- 13. Последний день предыдущего месяца в XSLT
- 14. Последнего день предыдущего месяца в Informatica
- 15. Отсутствующие события в первый день месяца, когда первый день - воскресенье
- 16. Как получить последний день предыдущего месяца в Javascript или JQuery
- 17. первый день того же месяца
- 18. Укажите первый день следующего месяца?
- 19. Найти первый и последний день для предыдущего календарного месяца в службах отчетов SQL Server (VB.Net)
- 20. CMD.exe получить первый день месяца
- 21. Добавить день от предыдущего месяца Выберите
- 22. Первый и последний день следующего месяца ssrs
- 23. Как определить первый день месяца в Python
- 24. Выберите первый элемент в каждый день месяца
- 25. Запланируйте работу в первый день каждого месяца
- 26. Получите первый день месяца в swift
- 27. Как получить первый день месяца в iOS
- 28. Последний и первый день месяца в таблицах Google
- 29. Как определить локализованный первый день месяца?
- 30. Как найти первый день месяца с классом DateTime
более описательное название может быть хорошо ... – helloandre
я обновил название – Prestaul
http://stackoverflow.com/questions/594054/date-problem-in-java выглядит ваш предыдущий вопрос был для Java. так что не совсем дубликат :) –