js 获取当月的第一天和最后一天
程序员文章站
2022-03-26 19:25:40
...
1获取当月的第一天
function getCurrentMonthFirst() {
var date = new Date()
date.setDate(1)
return date
}
2.获取当月的最后一天
function getCurrentMonthLast() {
var date = new Date();
var currentMonth = date.getMonth();
var nextMonth = ++currentMonth;
var nextMonthFirstDay = new Date(date.getFullYear(), nextMonth, 1);
var oneDay = 1000 * 60 * 60 * 24;
return new Date(nextMonthFirstDay - oneDay);
}
3.日期格式化
function format(fmt, date) {
var o = {
"M+": date.getMonth() + 1, //月份
"d+": date.getDate(), //日
"h+": date.getHours(), //小时
"m+": date.getMinutes(), //分
"s+": date.getSeconds(), //秒
"q+": Math.floor((date.getMonth() + 3) / 3), //季度
"S": date.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt))
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
}
var times = new Date
console.log(times)
console.log(format('yyyy-MM-dd hh:mm:ss', times))
console.log(format('yyyy-MM-dd', times))
console.log(format('yyyy/MM/dd', times))
console.log(format('yyyy年MM月dd日', times))
4.获取距离上次的时间间距
function getDateDiff(time) {
time = Date.parse(time.replace(/-/gi, '/'))
const minute = 1000 * 60
const hour = minute * 60
const day = hour * 24
const month = day * 30
const now = new Date().getTime()
const diffValue = now - time
if (diffValue < 0) {
return
}
const monthC = diffValue / month
const weekC = diffValue / (7 * day)
const dayC = diffValue / day
const hourC = diffValue / hour
const minC = diffValue / minute
if (monthC >= 1) {
return '' + parseInt(monthC) + '月前'
} else if (weekC >= 1) {
return '' + parseInt(weekC) + '周前'
} else if (dayC >= 1) {
return '' + parseInt(dayC) + '天前'
} else if (hourC >= 1) {
return '' + parseInt(hourC) + '小时前'
} else if (minC >= 1) {
return '' + parseInt(minC) + '分钟前'
} else {
return '刚刚'
}
}
console.log(getDateDiff('2018-09-07 14:46:55'))
参数 time 为标准时间格式 yyyy-MM-dd hh:mm:ss yyyy-MM-dd