javascript - 如何把時間戳轉換成日期類型的格式
問題描述
如何把時間戳轉換成日期類型的格式
問題解答
回答1:moment
http://momentjs.cn
看看要哪種格式
回答2:拿走不謝。我是新一代的活雷鋒
/** * 時間格式方法 * * @param {any} timeStamp 時間戳,秒級/毫秒級 * @param {any} type 格式化時間類型,默認 Y-M-D H:I:S * @returns {string} formatTime 格式化后的時間 例如: 2017-05-05 12:09:22 */function formatDate(timeStamp, type = ’Y-M-D H:I:S’, auto = false) { let time = (timeStamp + ’’).length === 10 ? new Date(parseInt(timeStamp) * 1000) : new Date(parseInt(timeStamp)); let _year = time.getFullYear(); let _month = (time.getMonth() + 1) < 10 ? ’0’ + (time.getMonth() + 1) : (time.getMonth() + 1); let _date = time.getDate() < 10 ? ’0’ + time.getDate() : time.getDate(); let _hours = time.getHours() < 10 ? ’0’ + time.getHours() : time.getHours(); let _minutes = time.getMinutes() < 10 ? ’0’ + time.getMinutes() : time.getMinutes(); let _secconds = time.getSeconds() < 10 ? ’0’ + time.getSeconds() : time.getSeconds(); let formatTime = ’’; let distinctTime = new Date().getTime() - time.getTime(); if (auto) {if (distinctTime <= (1 * 60 * 1000)) { // console.log(’一分鐘以內,以秒數計算’); let _s = Math.floor((distinctTime / 1000) % 60); formatTime = _s + ’秒前’;} else if (distinctTime <= (1 * 3600 * 1000)) { // console.log(’一小時以內,以分鐘計算’); let _m = Math.floor((distinctTime / (60 * 1000)) % 60); formatTime = _m + ’分鐘前’;} else if (distinctTime <= (24 * 3600 * 1000)) { // console.log(’一天以內,以小時計算’); let _h = Math.floor((distinctTime / (60 * 60 * 1000)) % 24); formatTime = _h + ’小時前’;} else if (distinctTime <= (30 * 24 * 3600 * 1000)) { let _d = Math.floor((distinctTime / (24 * 60 * 60 * 1000)) % 30); formatTime = _d + ’天前’; // console.log(’30天以內,以天數計算’);} else { // 30天以外只顯示年月日 formatTime = _year + ’-’ + _month + ’-’ + _date;} } else {switch (type) { case ’Y-M-D H:I:S’:formatTime = _year + ’-’ + _month + ’-’ + _date + ’ ’ + _hours + ’:’ + _minutes + ’:’ + _secconds;break; case ’Y-M-D H:I:S zh’:formatTime = _year + ’年’ + _month + ’月’ + _date + ’日 ’ + _hours + ’:’ + _minutes + ’:’ + _secconds;break; case ’Y-M-D H:I’:formatTime = _year + ’-’ + _month + ’-’ + _date + ’ ’ + _hours + ’:’ + _minutes;break; case ’Y-M-D H’:formatTime = _year + ’-’ + _month + ’-’ + _date + ’ ’ + _hours;break; case ’Y-M-D’:formatTime = _year + ’-’ + _month + ’-’ + _date;break; case ’Y-M-D zh’:formatTime = _year + ’年’ + _month + ’月’ + _date + ’日’;break; case ’Y-M’:formatTime = _year + ’-’ + _month;break; case ’Y’:formatTime = _year;break; case ’M’:formatTime = _month;break; case ’D’:formatTime = _date;break; case ’H’:formatTime = _hours;break; case ’I’:formatTime = _minutes;break; case ’S’:formatTime = _secconds;break; default:formatTime = _year + ’-’ + _month + ’-’ + _date + ’ ’ + _hours + ’:’ + _minutes + ’:’ + _secconds;break;} } // 返回格式化的日期字符串 return formatTime;}
相關文章:
1. 微信公眾號發送模板消息返回錯誤410002. css3怎么限定文字字數3. javascript - 微信jssdk ios下自定義onMenuShareAppMessage 分享失效,Android分享成功4. java - 用IDEA搭建SSM框架單元測試時候報錯5. javascript - 關于微信公眾號開發的一個trouble!6. java - HTML郵件有多出來的空白區域,如何處理?7. vue.js - vue apache 代理設置8. docker - MySQL 報錯:Access denied for user ’xxx’@’localhost’9. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!10. Android明明可以直接分享,為什么還要用微信開放平臺、微博開放平臺的sdk?
