#node.js
#node.js
Вопрос:
Я пытаюсь получить количество дней за данный месяц и год в node.js
дата и время npm i устанавливаются в node
dailyCalibRptTempTbl(req){
return new Promise((resolve,reject) => {
let responseObj = {};
var str_date = req.body.date;
var year = str_date.split('-')[0];
var month = str_date.split('-')[1];
var day = this.getNumOfDays(year,month);
console.log(day);
})
}
getNumOfDays(y,m){
var days = date(y, m, 0).getDate();
return days;
}
ожидайте тогда через 31 день для месяца 3 и 2019 года
Комментарии:
1.Вы можете использовать
moment-js
momentjs.com/docs/#/utilities для манипулирования датой и временем.
Ответ №1:
Используйте new Date
, как показано ниже
function getNumOfDays(y, m) {
return new Date(y, m, 0).getDate();
}
Ответ №2:
Используя Moment js, очень легко найти количество дней в данном месяце.
Предположим, что ваш формат даты 2019-03-30, вы хотите узнать количество дней в 2019-03
const moment = require('moment')
moment('2019-03', 'YYYY-MM').daysInMonth()
Для количества дней в данном году проверьте, является ли данный год високосным или нет, если это високосный год, количество дней = 366, иначе 365.
let isLeapYear = moment([2019]).isLeapYear()
let numOfDaysInYear = 365
if(isLeapYear){
numOfDayInYear = 366
}