显示时间戳
不少地方会让页面显示当前时间并实时计时功能,例:2019年5月23号 10:28::34 代码实现以下:html
getTime(){ var mydate = new Date(); var year = mydate.getFullYear(); var month = mydate.getMonth() + 1; var day = mydate.getDate(); var hour = mydate.getHours(); var min = mydate.getMinutes(); var sec = mydate.getSeconds(); var date=year + '年' + pad(month) + '月' + pad(day) + '日 '+pad(hour) + ':' + pad(min) + ':' + pad(sec); return date } function pad(s){ return s < 10 ? '0' + s : s; }; //定时刷新 $(function() { setInterval("getTime()", 1000); });
计算时间间隔,也就是时间段。例:03:34:45
//mss 为时间戳差值,单位为ms formatDuring (mss) { var hours = parseInt(mss / (1000 * 60 * 60)); var minutes = parseInt((mss % (1000 * 60 * 60)) / (1000 * 60)); var seconds = parseInt((mss % (1000 * 60)) / 1000); var str = pad(hours)+ ":" + pad(minutes) + ":" + pad(seconds); return str; };
ES6 语法----时间格式化及获取时间段
/** * 时间格式化 * @param {*} date Date对象 或 时间戳 * @param {*} fmt "yyyy-MM-dd hh:mm:ss" */ export function formatTime (date, fmt = "yyyy-MM-dd hh:mm:ss") { if (!date) return date; if (!(date instanceof Date)) { date = new Date(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) //季度 }; // 格式化年 if (/(y+)/.test(fmt)) { fmt = fmt.replace( RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length) ); } // 格式化毫秒 if (/(S+)/.test(fmt)) { const tmp = date.getMilliseconds(); fmt = fmt.replace( RegExp.$1, ("000" + tmp).substr(("" + tmp).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; } /** * 经过最近时间和单位(最近一周,最近一月等),获取时间段(时间戳数组) * @param {*} timeValue 最近时间 * @param {*} timeUnit 时间单位 */ export function getTimeRangeByUnit (timeValue, timeUnit) { let rangeArr = []; const start = new Date().getTime(); const end = new Date().getTime(); switch (timeUnit) { case "hours": rangeArr = [start - 3600 * 1000 * timeValue, end]; break; case "day": rangeArr = [ start - 3600 * 1000 * 24 * timeValue, end ]; break; case "week": rangeArr = [ start - 3600 * 1000 * 24 * 7 * timeValue, end ]; break; case "month": rangeArr = [ start - 3600 * 1000 * 24 * 30 * timeValue, end ]; break; case "year": rangeArr = [ start - 3600 * 1000 * 24 * 365 * timeValue, end ]; break; } return rangeArr; }
原文出处:https://www.cnblogs.com/yaohe/p/10910473.html数组