const happenTime = (num) => { // 时间戳转换成 “yyyy-MM-dd hh:mm:ss”格式
let date = new Date(num);
//时间戳为10位需*1000,时间戳为13位的话不需乘1000
//年
let year = date.getFullYear();
// 月
let month = date.getMonth() + 1;
month = month < 10 ? ('0' + month) : month; //月补0
//日
let day = date.getDate();
day = day < 10 ? ('0' + day) : day; //天补0
//时
let hours = date.getHours();
hours = hours < 10 ? ('0' + hours) : hours; //小时补0
// 分
let minutes = date.getMinutes();
minutes = minutes < 10 ? ('0' + minutes) : minutes; //分钟补0
// 秒
let seconds = date.getSeconds();
seconds = seconds < 10 ? ('0' + seconds) : seconds; //秒补0
// 星期
const weekArr = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
let weekDay = weekArr[date.getDay()];
let weekNum = date.getDay();
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds} ${weekDay}`
}
const happenTimeJson = (num) => { // 时间戳转换成 对象格式
/**
* day: number>10 ? number : "'0'+num"
* hours: number>10 ? number : "'0'+num"
* minutes: number>10 ? number : "'0'+num"
* month: number>10 ? number : "'0'+num"
* seconds: number>10 ? number : "'0'+num"
* weekDay: '' // 星期一 ~ 星期日
* weekNum:number 0 ~ 6
* year:number
*/
let date = new Date(num);
//时间戳为10位需*1000,时间戳为13位的话不需乘1000
//年
let year = date.getFullYear();
// 月
let month = date.getMonth() + 1;
month = month < 10 ? ('0' + month) : month; //月补0
//日
let day = date.getDate();
day = day < 10 ? ('0' + day) : day; //天补0
//时
let hours = date.getHours();
hours = hours < 10 ? ('0' + hours) : hours; //小时补0
// 分
let minutes = date.getMinutes();
minutes = minutes < 10 ? ('0' + minutes) : minutes; //分钟补0
// 秒
let seconds = date.getSeconds();
seconds = seconds < 10 ? ('0' + seconds) : seconds; //秒补0
// 星期
const weekArr = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
let weekDay = weekArr[date.getDay()];
let weekNum = date.getDay();
return {
year,
month,
day,
hours,
minutes,
seconds,
weekDay,
weekNum,
}
}
const timeProcessing = (time) => { // “yyyy-MM-dd hh:mm:ss”转换成时间戳
/**
* 未接收到参数时@return 当前时间
*/
let Time = time ? new Date(time) : new Date();
// console.log(Time) //Fri Nov 19 2021 01:30:00 GMT+0800 (中国标准时间)
let timestemp = Time.getTime();
// console.log(timestemp)
//1637256600000
return timestemp
}
//时间是否在本周
const isThisWeek = (time) => {
// 当前时间 年月日
const nowTime = happenTimeJson(timeProcessing())
let timestamp = timeProcessing(`${nowTime.year}-${nowTime.month}-${nowTime.day} 00:00:00`);
//本周周日的的时间
/**
* (serverDate.getDay() === 0 ? 7 :serverDate.getDay() )
* 因为星期天为0 所以需要装换为7
* 用8减,是因为这周结束要到下周一的0点
*/
let sundayTiem = timestamp + ((8 - (nowTime.weekNum === 0 ? 7 : nowTime.weekNum)) * 24 * 60 * 60 * 1000)
// 本周周一的时间
let mondayTime = timestamp - (((nowTime.weekNum === 0 ? 7 : nowTime.weekNum) - 1) * 24 * 60 * 60 * 1000)
// 接收参数时间
let currentData = timeProcessing(time);
if (currentData > mondayTime && currentData < sundayTiem) {
/**
* isweek=true是本周 false不是本周
*/
return {
isweek: true,
date: happenTimeJson(currentData)
}
} else {
return {
isweek: false,
date: happenTimeJson(currentData)
}
}
}
//时间是否在今天
const isThisToday = (time) => {
// 当前时间
let timestamp = timeProcessing();
let serverDate = happenTimeJson(timestamp);
// 今天开始时间
let startTiem =timeProcessing(`${serverDate.year}-${serverDate.month}-${serverDate.day-1} 00:00:00`);
// 今天结束时间
let endTime = timeProcessing(`${serverDate.year}-${serverDate.month}-${serverDate.day+1} 00:00:00`);
// 接收参数时间
let currentData = timeProcessing(time);
if (currentData > startTiem && currentData < endTime) {
/**
* isweek=true是今天 false不是今天
*/
return {
isweek: true,
date: happenTimeJson(currentData)
}
} else {
return {
isweek: false,
date: happenTimeJson(currentData)
}
}
}
export default {
timeProcessing,
happenTimeJson,
happenTime,
isThisWeek,
isThisToday
}
uni-app时间戳
于 2022-02-15 11:10:07 首次发布