js怎么取当前日期3个月前的一天

JavaScript013

js怎么取当前日期3个月前的一天,第1张

js中获取当前时间可以使用new Date()

而要获取前一天的时间,可以使用当前时间减去一天的毫秒数,得到毫秒数之后然后再转换成时间。

即var yesterdsay = new Date(new Date().getTime() - 86400000)

new Date().getTime()用户获取当前时间的毫秒数,而86400000是一天的毫秒数,两个值相减得到的差值就是昨时间的毫秒数。

最后通过new Date(时间差值毫秒数),就可以把毫秒数转换成时间了。

三个月前第一天

var now = new Date(),

    year = now.getFullYear(),

    month = now.getMonth() + 1

month -= 3

if (month < 1) {

    year -= 1

    month += 12

}

year = year.toString()

month = month < 10 ? '0' + month : month.toString()

var past = year + '-' + month + "-01"

console.log(past)

本月最后一天

var now = new Date(),

    year = now.getFullYear(),

    month = now.getMonth() + 1

year = year.toString()

month = month < 10 ? '0' + month : month.toString()

var future = year + '-' + month + "-31"

console.log(future)

你好,

先说一年的月份,这个需要问吗?一年能出现13个月?所以:

var monthOfYear = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

// 或者中文,根据你的需求自己定

var monthOfYear = ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月']

再来说获取最近三个月月份的事情:

// 先取到当前日期对象

var date = new Date()

// 月份数组

var nearThree = []

// 当月

var month = date.getMonth()

// 现将本月推入数组

nearThree.push(monthOfYear[month])

// 最近一月逆推两个月

for (var i = 1 i <= 2 i++) {

    date.setMonth(month - i)

    nearThree.unshift(monthOfYear[date.getMonth()])

}

console.log(monthOfYear)

console.log(nearThree)

好了,希望能解决你的问题。