一、时间戳转日期-年月日时分秒
//时间戳(10位)
let date = new Date(parseInt(value * 1000))
//时间戳(13位)
let date = new Date(parseInt(value))
let y = date.getFullYear()
let M = date.getMonth() + 1
M = M < 10 ? ('0' + M) : M
let d = date.getDate()
d = d < 10 ? ('0' + d) : d
let h = date.getHours()
h = h < 10 ? ('0' + h) : h
let m = date.getMinutes()
m = m < 10 ? ('0' + m) : m
let s = date.getSeconds()
s = s < 10 ? ('0' + s) : s
return y + '-' + M + '-' + d + ' ' + h + ':' + m + ':' + s
formatDate(time) {
var date = new Date(time);
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
let h = date.getHours();
h = h < 10 ? "0" + h : h;
let m = date.getMinutes();
m = m < 10 ? "0" + m : m;
let s = date.getSeconds();
s = s < 10 ? "0" + s : s;
month = month < 10 ? "0" + month : month;
day = day < 10 ? "0" + day : day;
return year + "-" + month + "-" + day + " " + h + ":" + m + ":" + s;
},
二、将2020-06-27T14:20:27.000000Z 时间格式转换成 2020-06-27 14:20:27
定义全局过滤器
Vue.filter('format', function(date) {
var json_date = new Date(date).toJSON();
return new Date(new Date(json_date) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '')
})
例:{{timeVal | format}}
三、Vue中使用moment.js(时间格式化插件);
安装moment.js插件
npm install moment --save
import moment from 'moment';
Vue.filter('dateFormat',function(value,format)){
return moment(value).format(format);
}
使用方法:
{{time | dateFormat('YYYY-MM-DD HH:mm:ss')}}
直接在Vue中定义成时间格式方法:
import moment from 'moment';
Vue.prototype.$moment = moment;
在vue文件中当作方法使用
this.$moment(timeVal).format('YYYY-MM-DD'); // 2022-02-11
四、将时间戳格式化
function formatDate(date, fmt) {
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
}
let o = {
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'h+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()
}
for (let k in o) {
if (new RegExp(`(${k})`).test(fmt)) {
let str = o[k] + ''
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str))
}
}
return fmt
}
function padLeftZero(str) {
return ('00' + str).substr(str.length)
}
使用方法:
formatDate(date, 'yyyy-MM-dd hh:mm');
formatDate(date, 'yyyy-MM-dd');
五、根据当前时间(北京时间)转化国际标准时间
let time = new Date().getTime();
var date = new Date(time + 8 * 3600 * 1000); // 增加8小时
let DateTime= date.toJSON().substr(0, 19).replace('T', ' ');