/**
|
* 时间前后向前推算时间集合
|
* @param {string:before|after} timebd:获取时间往后推,还是往前推,
|
* @param {boole} haveCurrentDay:包不包含当天时间,
|
* @param {number} Days:计算几天的时间,
|
* @param {string:"2023-11-02"} timing:指定不指定当天的日期
|
* @returns {array}数据集合
|
*/
|
export const nextDay = (timebd, haveCurrentDay, Days, timing) => {
|
|
let today = new Date() //获取今天的日期
|
if (timing) {
|
today = new Date(timing)
|
}
|
let date2 = new Date(today);
|
let dateArray = []
|
timebd=timebd ? timebd:"after"
|
haveCurrentDay=haveCurrentDay ? true:false
|
Days=Days ? Days:7
|
function TimestampToDate2(Timestamp) {
|
let now = new Date(Timestamp),
|
y = now.getFullYear(),
|
m = now.getMonth() + 1,
|
d = now.getDate();
|
return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d);
|
}
|
let fori=haveCurrentDay ? 0:1;
|
let fortotal=haveCurrentDay ? Days:Days+1;
|
for(let i = fori; i < fortotal; i++){
|
let everyDay=""
|
if (timebd=="after") {//未来
|
everyDay=date2.setDate(today.getDate() + i)
|
}else{//过去
|
everyDay=date2.setDate(today.getDate() - i)
|
}
|
dateArray.push(TimestampToDate2(everyDay)) //获取未来7天内的日期
|
}
|
if (timebd=="after") {//未来
|
return dateArray
|
}else{//过去
|
return dateArray.reverse()
|
}
|
}
|
|
/**
|
* 返回两个日期之前的天数
|
*/
|
export const getDateByDays = (startDate, endDdate) => {
|
let d1 = Date.parse(new Date(startDate));
|
let d2 = Date.parse(new Date(endDdate));
|
// 时间戳相减 / 天数
|
let day = parseInt((d2 - d1) / (1000 * 60 * 60 * 24));
|
return day
|
}
|
|
// 获取多少天后的日期
|
export const getDaysAfterDate = (date, days) => {
|
if (days === 0) {
|
return '2099-01-01'
|
}
|
const now = new Date(date);
|
now.setDate(now.getDate() + days);
|
const year = now.getFullYear();
|
const month = now.getMonth() + 1; // 月份是从0开始的
|
const day = now.getDate();
|
return `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}`;
|
}
|
|
|
// meeting
|
/**
|
* 获取当天日期
|
**/
|
export const getDay = () => {
|
let date = new Date();
|
var year = date.getFullYear();
|
var month = date.getMonth() + 1;
|
var day = date.getDate();
|
month = (month > 9) ? month : ("0" + month);
|
day = (day < 10) ? ("0" + day) : day;
|
let week = '星期' + '日一二三四五六'.charAt(new Date().getDay())
|
var today = year + "年" + month + "月" + day + "日" + " " + week;
|
|
return {
|
today,
|
date: year + "-" + month + "-" + day,
|
day
|
};
|
}
|
|
/**
|
* 获取上一天日期
|
**/
|
export const getPreviousDay = (number, val) => {
|
let num = (24*60*60*1000) * number;
|
let date = ''
|
if (val) {
|
date = new Date(new Date(val).getTime() - num);
|
} else {
|
date = new Date(new Date().getTime() - num);
|
}
|
var year = date.getFullYear();
|
var month = date.getMonth() + 1;
|
var day = date.getDate();
|
month = (month > 9) ? month : ("0" + month);
|
day = (day < 10) ? ("0" + day) : day;
|
let week = '星期' + '日一二三四五六'.charAt(date.getDay())
|
var today = year + "年" + month + "月" + day + "日" + " " + week;
|
|
return {
|
today,
|
date: year + "-" + month + "-" + day
|
};
|
}
|
|
// 格式化日对象
|
export const getNowDate = () => {
|
var date = new Date();
|
var sign2 = ":";
|
var year = date.getFullYear() // 年
|
var month = date.getMonth() + 1; // 月
|
var day = date.getDate(); // 日
|
var hour = date.getHours(); // 时
|
var minutes = date.getMinutes(); // 分
|
var seconds = date.getSeconds() //秒
|
var weekArr = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天'];
|
var week = weekArr[date.getDay()];
|
// 给一位数的数据前面加 “0”
|
if (month >= 1 && month <= 9) {
|
month = "0" + month;
|
}
|
if (day >= 0 && day <= 9) {
|
day = "0" + day;
|
}
|
if (hour >= 0 && hour <= 9) {
|
hour = "0" + hour;
|
}
|
if (minutes >= 0 && minutes <= 9) {
|
minutes = "0" + minutes;
|
}
|
if (seconds >= 0 && seconds <= 9) {
|
seconds = "0" + seconds;
|
}
|
return year + "-" + month + "-" + day + " " + hour + sign2 + minutes + sign2 + seconds;
|
}
|
|
//必须为字母加数字且长度不小于8位
|
export const CheckPassWord = (password) => {
|
var str = password;
|
if (str == null || str.length <8) {
|
return false;
|
}
|
var reg1 = new RegExp(/^[0-9A-Za-z]+$/);
|
if (!reg1.test(str)) {
|
return false;
|
}
|
var reg = new RegExp(/[A-Za-z].*[0-9]|[0-9].*[A-Za-z]/);
|
if (reg.test(str)) {
|
return true;
|
} else {
|
return false;
|
}
|
}
|