new Date 对象说明
var Nowdate=new Date();
Nowdate.getYear(); //获取当前年份(2位)
Nowdate.getFullYear(); //获取完整的年份(4位,1970-????)
Nowdate.getMonth(); //获取当前月份(0-11,0代表1月)
Nowdate.getDate(); //获取当前日(1-31)
Nowdate.getDay(); //获取当前星期X(0-6,0代表星期天)
Nowdate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
Nowdate.getHours(); //获取当前小时数(0-23)
Nowdate.getMinutes(); //获取当前分钟数(0-59)
Nowdate.getSeconds(); //获取当前秒数(0-59)
Nowdate.getMilliseconds(); //获取当前毫秒数(0-999)
Nowdate.toLocaleDateString(); //获取当前日期
Nowdate.toLocaleString( ); //获取日期与时间
获取当前
时间
var Nowdate=new Date();
var nowTime=Nowdate.toLocaleTimeString();
格式为 2020-12-10 如果为2020-1-1 补齐为 2020-01-01
获取本周
第一天和第二天
当前时间为 2020-12-10 输出:2020-12-07 2020-12-13
var Nowdate=new Date();
var WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000); // 本周第一天
var WeekLastDay=new Date((WeekFirstDay/1000+6*86400)*1000);// 本周第最后一天
// 本周第一天
let yearState=WeekFirstDay.getFullYear()
let monthState=(WeekFirstDay.getMonth()+1)<10?"0"+(WeekFirstDay.getMonth()+1):(WeekFirstDay.getMonth()+1)
let todayState=(WeekFirstDay.getDate()<10?"0"+WeekFirstDay.getDate():WeekFirstDay.getDate())
// 本周第一天
let yearEnd=WeekLastDay.getFullYear()
let monthEnd=(WeekLastDay.getMonth()+1)<10?"0"+(WeekLastDay.getMonth()+1):(WeekLastDay.getMonth()+1)
let todayEnd=(WeekLastDay.getDate()<10?"0"+WeekLastDay.getDate():WeekLastDay.getDate())
获取本月
第一天和第二天 格式为 2020-12-10 如果为2020-1-1 补齐为 2020-01-01
当前时间为 2020-12-10 输出:2020-12-01 2020-12-31
var Nowdate=new Date();
var MonthFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth(),1);
var MonthNextFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth()+1,1);
var MonthLastDay=new Date(MonthNextFirstDay-86400000);
// 本月第一天
let yearState=MonthFirstDay.getFullYear()
let monthState=(MonthFirstDay.getMonth()+1)<10?"0"+(MonthFirstDay.getMonth()+1):(MonthFirstDay.getMonth()+1)
let todayState=(MonthFirstDay.getDate()<10?"0"+MonthFirstDay.getDate():MonthFirstDay.getDate())
// 本月最后一天
let yearEnd=MonthLastDay.getFullYear()
let monthEnd=(MonthLastDay.getMonth()+1)<10?"0"+(MonthLastDay.getMonth()+1):(MonthLastDay.getMonth()+1)
let todayEnd=(MonthLastDay.getDate()<10?"0"+MonthLastDay.getDate():MonthLastDay.getDate())
/**
* 转换时间为字符串(格式)
* @param {(Object|string|number)} time
* @param {string} cFormat
* @returns {string}
*/
export function parseTime(time, cFormat) {
if (arguments.length === 0) {
return null
}
const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
let date
if (typeof time === 'object') {
date = time
} else {
if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
time = parseInt(time)
}
if ((typeof time === 'number') && (time.toString().length === 10)) {
time = time * 1000
}
date = new Date(time)
}
const formatObj = {
y: date.getFullYear(),
m: date.getMonth() + 1,
d: date.getDate(),
h: date.getHours(),
i: date.getMinutes(),
s: date.getSeconds(),
a: date.getDay()
}
const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
let value = formatObj[key]
// Note: getDay() returns 0 on Sunday
if (key === 'a') {
return ['日', '一', '二', '三', '四', '五', '六'][value]
}
if (result.length > 0 && value < 10) {
value = '0' + value
}
return value || 0
})
return time_str
}
this.parseTime(new Date(), "{y}-{m}-{d}") // 获取当前时间
// 当前日期间隔一个月
let now = new Date();
let endDate = this.parseTime(now, "{y}-{m}-{d}");
now.setMonth(now.getMonth() - 1);
let beginDate = this.parseTime(now, "{y}-{m}-{d}");
let time = [beginDate,endDate];