时间格式化 yyyy/MM/dd hh:mm:ss
var formatTime = function(date) {
if(date instanceof Date){
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
const hour = date.getHours()
const minute = date.getMinutes()
const second = date.getSeconds()
return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}else if(typeof date =='number'){
const d = new Date(date)
return formatTime(d)
}else{
return null;
}
}
在给定的日期基础上加时间
/**
* 在给定的日期基础上加时间
* @param {日期} date
* @param {数量} num
* @param {单位} unit y年 M月 d日 h时 m分 s秒
*/
var addTime = function(date,num,unit) {
if(date instanceof Date){
const newD = new Date(date.getTime())
if(!unit){
newD.setTime(date.getTime()+num)
}else if(unit=='y'){
newD.setFullYear(newD.getFullYear()+num)
}else if(unit=='M'){
newD.setMonth(newD.getMonth()+num)
}else if(unit=='d'){
newD.setDate(newD.getDate()+num)
}else if(unit=='h'){
newD.setHours(newD.getHours()+num)
}else if(unit=='m'){
newD.setMinutes(newD.getMinutes()+num)
}else if(unit=='s'){
newD.setSeconds(newD.getSeconds()+num)
}
return newD;
}else if((typeof date) =='number'){
return addTime(new Date(date))
}else{
return null;
}
}
获取本周的日期数据
var weekDateArray = function(date){
var dateArray = new Array(7);
const dnx = date.getDay()*-1
for (var i = dnx; i < dnx+7; i++) {
const tmpDate = new Date(date.getTime())
tmpDate.setDate(date.getDate()+i)
dateArray[i - dnx] = {
weekStr: WEEK[tmpDate.getDay()],
dateStr: formatMD(tmpDate),
timeStr:formatDate(tmpDate),
isToday: (i==0),
time: tmpDate
}
}
return dateArray;
}
获取时间的日期部分
var formatMD = function(date) {
if(date instanceof Date){
const month = date.getMonth() + 1
const day = date.getDate()
return [month, day].map(formatNumber).join('-')
}
else if(typeof date =='number'){
const d = new Date(date)
return formatMD(d)
}
else{
return null;
}
}