feat: improve date algorithm
This commit is contained in:
parent
adde0023d6
commit
f878564b4c
@ -46,13 +46,64 @@ $postCount := len $posts }}
|
|||||||
let start = new Date({{ .Site.Params.widgets.status.start }})
|
let start = new Date({{ .Site.Params.widgets.status.start }})
|
||||||
let startFormated = start.format({{ .Site.Params.widgets.status.format }})
|
let startFormated = start.format({{ .Site.Params.widgets.status.format }})
|
||||||
document.querySelector('#start').innerHTML = startFormated
|
document.querySelector('#start').innerHTML = startFormated
|
||||||
|
start.setMonth(start.getMonth() - 1)
|
||||||
|
|
||||||
let now = new Date()
|
let now = new Date()
|
||||||
let diff = new Date(now.getTime() - start.getTime());
|
now.setMonth(now.getMonth() -1)
|
||||||
|
|
||||||
let years = (diff.getUTCFullYear() - 1970)
|
let diff = Date.UTC(now.getFullYear(), now.getMonth(), now.getDay(), 0, 0, 0)
|
||||||
let months = diff.getUTCMonth()
|
- Date.UTC(start.getFullYear(), start.getMonth(), start.getDay(), 0, 0, 0)
|
||||||
let days = diff.getUTCDate() - 1
|
|
||||||
document.querySelector('#time').innerHTML = years + ' 年 ' + months + ' 月 ' + days + ' 天'
|
function checkleapyear(datea)
|
||||||
|
{
|
||||||
|
if(datea.getYear() % 4 == 0)
|
||||||
|
{
|
||||||
|
if(datea.getYear() % 10 != 0)
|
||||||
|
{
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(datea.getYear() % 400 == 0)
|
||||||
|
return true
|
||||||
|
else
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function DaysInMonth(Y, M) {
|
||||||
|
with (new Date(Y, M, 1, 12)) {
|
||||||
|
setDate(-2)
|
||||||
|
return getDate()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function datediff(date1, date2)
|
||||||
|
{
|
||||||
|
var y1 = date1.getFullYear(), m1 = date1.getMonth(), d1 = date1.getDate(),
|
||||||
|
y2 = date2.getFullYear(), m2 = date2.getMonth(), d2 = date2.getDate()
|
||||||
|
if (d1 < d2)
|
||||||
|
{
|
||||||
|
m1--
|
||||||
|
d1 += DaysInMonth(y2, m2)
|
||||||
|
}
|
||||||
|
if (m1 < m2)
|
||||||
|
{
|
||||||
|
y1--
|
||||||
|
m1 += 12
|
||||||
|
}
|
||||||
|
return [y1 - y2, m1 - m2, d1 - d2]
|
||||||
|
}
|
||||||
|
|
||||||
|
var dife = datediff(now, start)
|
||||||
|
if(checkleapyear(start)==true)
|
||||||
|
{
|
||||||
|
document.querySelector('#time').innerHTML = dife[0] + " 年 "+dife[1] + ' 月 ' + dife[2] + ' 天'
|
||||||
|
|
||||||
|
}else{
|
||||||
|
document.querySelector('#time').innerHTML = dife[0] + " 年 "+dife[1] + ' 月 ' + dife[2] + ' 天'
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
</section>
|
</section>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user