通常后台传递给前台的都是时间戳,但是前台展示不能展示时间戳,所以显示的时候就需要做转化。
复制下面文件至项目utils/utils.js中:
/**
* new Date() ---> 转化为 年 月 日 时 分 秒
* let date = new Date();
* date: 传入参数日期 Date
*/
function formatTime(date) {
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var minute = date.getMinutes()
var second = date.getSeconds()
return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}
function formatNumber(n) {
n = n.toString()
return n[1] ? n : '0' + n
}
/**
* 时间戳转化为年 月 日 时 分 秒
* number: 传入时间戳
* format:返回格式,支持自定义,但参数必须与formateArr里保持一致
*/
function formatTimeTwo(number, format) {
var formateArr = ['Y', 'M', 'D', 'h', 'm', 's'];
var returnArr = [];
var date = new Date(number * 1000);
returnArr.push(date.getFullYear());
returnArr.push(formatNumber(date.getMonth() + 1));
returnArr.push(formatNumber(date.getDate()));
returnArr.push(formatNumber(date.getHours()));
returnArr.push(formatNumber(date.getMinutes()));
returnArr.push(formatNumber(date.getSeconds()));
for (var i in returnArr) {
format = format.replace(formateArr[i], returnArr[i]);
}
return format;
}
module.exports = {
formatTime: formatTime,
formatTimeTwo: formatTimeTwo
}
在需要转化时间戳或日期的 js 页面引入utils.js:
let time = require('../../utils/utils.js');
使用:
var date = new Date();
console.log(formatTime(date));
// 当前时间的日期格式: 2019/02/22 15:24:23
var sjc = 1550714678;
console.log(formatTimeTwo(sjc,'Y-M-D h:m:s'));
// 时间戳转化的日期格式: 2019-02-21 10:04:38
希望此文对您有所帮助!!
网友评论