js 獲取當月的第一天和最後一天 & 日期格式化 & 獲取距離上次的時間間隔
阿新 • • 發佈:2018-12-12
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