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. docker-machine添加一個已有的docker主機問題2. html - 用ajax提交表單后,返回驗證數據在頁面location.href跳轉到主頁,怎么傳遞session給主頁3. java-ee - JAVA的注解@Api和@ApiOperation的作用是什么,怎么跳轉頁面的4. apache - nginx 日志刪除后 重新建一個文件 就打不了日志了5. java - mybatis會自己緩存自己生成過的prestatement嗎6. angular.js - grunt server 報錯7. java - tomcat服務經常晚上會掛,求解?8. java - 原生CGLib內部方法互相調用時可以代理,但基于CGLib的Spring AOP卻代理失效,為什么?9. node.js - node express 中ajax post請求參數接收不到?10. mysql的主從復制、讀寫分離,關于從的問題
