js Date 对象用于处理日期和时间的,Date 对象会自动把当前日期和时间保存为其初始值,即console.log(new Date()) //
VM108:1 Tue Jun 04 2019 21:14:48 GMT+0800 (中国标准时间)
经常使用的方法有:
getDate() :从 Date 对象返回一个月中的某一天 (1 ~ 31)
getDay():从 Date 对象返回一周中的某一天 (0 ~ 6)
getMonth() :从 Date 对象返回月份 (0 ~ 11)
getFullYear():从 Date 对象以四位数字返回年份
getHours(): 返回 Date 对象的小时 (0 ~ 23)
getMinutes(): 返回 Date 对象的分钟 (0 ~ 59)
getSeconds():返回 Date 对象的秒数 (0 ~ 59)
setDate():设置 Date 对象中月的某一天 (1 ~ 31)
setMonth():设置 Date 对象中月份 (0 ~ 11)
setFullYear(): 设置 Date 对象中的年份(四位数字)
今天使用到的两个小方法也是基于此的
// 获取某个时间段中的所有日期
getYmdOfDateRange (start, end) {
let dateAll = []
let i = 0
let startDate = new Date(start)
let endDate = new Date(end)
while ((endDate.getTime() - startDate.getTime() >= 0)) {
let y = startDate.getFullYear()
let m = (startDate.getMonth() + 1).toString().length === 1 ? '0' + (startDate.getMonth() + 1).toString() : (startDate.getMonth() + 1).toString()
let d = (startDate.getDate().toString()).length === 1 ? '0' + startDate.getDate().toString() : startDate.getDate().toString()
dateAll[i] = y + '-' + m + '-' + d
startDate.setDate(startDate.getDate() + 1)
i += 1
}
return dateAll
},
// 获取最近几天
getRecentDate (num) {
let day = num || 30
let curDateStamp = new Date().getTime()
let recentDateStamp = day * 24 * 60 * 60 * 1000
let prevDate = new Date(curDateStamp - recentDateStamp)
let formatDate = prevDate.getFullYear() + '-' + ((prevDate.getMonth() + 1).toString().length === 1 ? '0' + (prevDate.getMonth() + 1).toString() : (prevDate.getMonth() + 1).toString()) + '-' + (prevDate.getDate().toString().length === 1 ? '0' + prevDate.getDate().toString() : prevDate.getDate().toString())
return formatDate
},