我想知道如何才能获得当前年,月和日,但是以javascript的年份格式
示例:
当日期为2016/6/15时,格式为2016.5(年度中心)
答案 0 :(得分:2)
function getNumberOfDaysPast(date) {
var currentMonth = date.getMonth();
var total = 0;
for (var i = 0; i < currentMonth; i++) {
var month = new Date(date.getFullYear(), i, 0);
total += month.getDate();
}
total += date.getDate();
return total;
}
function dayPercent(date) {
if (date.getFullYear() % 4 == 0 && date.getFullYear % 100 != 0) {
return Math.floor((getNumberOfDaysPast(date) / 366) * 100)
} else {
return Math.floor((getNumberOfDaysPast(date) / 365) * 100)
}
}
date = new Date("2016-12-31");
console.log(dayPercent(date))
date = new Date();
console.log(dayPercent(date));
console.log(date.getFullYear() + '.' + dayPercent(date))
更新
考虑到闰年,我们只需要在第四年(而不是第100年)添加一天http://www.timeanddate.com/date/leapyear.html
究竟哪些年是闰年? 我们在2月29日增加了一个闰日,几乎每四年一次。闰日是一个额外的或闰日,我们将它添加到一年中最短的一个月,即2月。 在公历中,必须考虑三个标准来确定闰年: 年份可以平均除以4; 如果年份可以平均除以100,那么它不是闰年,除非; 这一年也可以被400整除。然后是闰年。 这意味着在公历中,2000年和2400年是闰年,而1800,1900,2100,2200,2300和2500年不是闰年。