一、时间转化为时间戳
1.第一种方法
function getDateTimeStamp(dateStr){ console.log(dateStr.replace(/-/gi,"/")) return Date.parse(dateStr.replace(/-/gi,"/")); } getDateTimeStamp('2020/04/14 20:00') ---打印出 1586865600000 getDateTimeStamp('2020-04-14 20:00') ---打印出 1586865600000
2.方法二
let d = new Date('2020-04-14 20:00') let t = d.getTime(d) // 方法1 let t = d.valueOf(d) // 方法2 let t = d.parse(d) // 方法3 console.log(t); ---打印出 1586865600000
二、时间戳转化为时间
const format = (time, format = 'yyyy-mm-dd') => { const d = time ? new Date(time) : new Date(); const t = (i) =>; { return (i < 10 ? '0' : '') + i }; const year = d.getFullYear(); const month = d.getMonth() + 1; const day = d.getDate(); const hour = d.getHours(); const minutes = d.getMinutes(); const seconds = d.getSeconds(); const weekday = d.getDay(); return format.replace(/(yy){1,2}|m{1,2}|d{1,2}|h{1,2}|i{1,2}|s{1,2}|w{1,2}/gi, function(r) { switch (r.toUpperCase()) { case 'YY': return ('' + year).substr(2); case 'YYYY': return year; case 'M': return month; case 'MM': return t(month); case 'D': return day; case 'DD': return t(day); case 'H': return hour; case 'HH': return t(hour); case 'I': return minutes; case 'II': return t(minutes); case 'S': return seconds; case 'SS': return t(seconds); case 'W': return `星期${['日', '一', '二', '三', '四', '五', '六'][weekday]}`; case 'WW': return ['Sunday', 'Monday', 'TuesDay', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][weekday]; } }); } format(1586865600000); // 2020-04-14 format(1586865600000, 'yyyy/mm/dd hh:ii:ss'); // 2020/04/14 20:00:00 format(1586865600000, 'yy/m/d hh:ii:ss'); // 20/4/14 20:00:00 format(1586865600000, 'yyyy/mm/dd w'); // 2020/04/14 星期二 format(1586865600000, 'mm/dd/yyyy'); // 04/14/2020
三、时间转化为特定形式
getDateTimeStamp('2020-04-14 20:00:00')--将时间转化为时间戳 function getDateTimeStamp(dateStr){ console.log(dateStr.replace(/-/gi,"/")) let dateTimeStamp = dateStr.replace(/-/gi,"/"); getDateDiff(dateTimeStamp) return Date.parse(dateStr.replace(/-/gi,"/")); } function getDateDiff(dateTimeStamp){--将时间戳和当前时间比较,转化为特定的形式 var minute = 1000 * 60; var hour = minute * 60; var day = hour * 24; var halfamonth = day * 15; var month = day * 30; var now = new Date().getTime(); var diffValue = now - dateTimeStamp; if(diffValue < 0){return;} var monthC =diffValue/month; var weekC =diffValue/(7*day); var dayC =diffValue/day; var hourC =diffValue/hour; var minC =diffValue/minute; if(monthC>=1){ result="" + parseInt(monthC) + "月前"; } else if(weekC>=1){ result="" + parseInt(weekC) + "周前"; } else if(dayC>=1){ result=""+ parseInt(dayC) +"天前"; } else if(hourC>=1){ result=""+ parseInt(hourC) +"小时前"; } else if(minC>=1){ result=""+ parseInt(minC) +"分钟前"; }else result="刚刚"; return result; }