在项目中可能需要到各式各样的日期格式,
比如:2018-1-5,2018-01-05,2018年1月5号......
而后台一般传过来的是时间戳,那么就需要我们把时间戳转换为日期
可以用时间戳在线转换工具,判断你转对了没
代码:
let create_time = parseInt(e) * 1000 //这里获得的时间戳是s,需要*1000
console.log(create_time)
//关键代码↓↓↓
let year = new Date(create_time).getFullYear();
let month = new Date(create_time).getMonth() + 1;
let date = new Date(create_time).getDate();
let hour = new Date(create_time).getHours();
let minute = new Date(create_time).getMinutes();
let second = new Date(create_time).getSeconds();
//关键代码↑↑↑
//然后根据自己的需要拼就可以了
if(month < 10) {month = "0" + month}
if(date < 10) {date = "0" + date}
if(hour < 10) {hour = "0" + hour}
if(minute < 10) {minute = "0" + minute}
if(second < 10) {second = "0" + second}
return year + "-" + month + "-" + date+" "+hour + ":" + minute+":"+second
备注:ES2017引入了字符串补全长度的功能,padStart()和padEnd()。接收两个参数,第一个参数是字符串的最小长度,第二个是补全的字符串。
上面的if代码可以改为
year=year.toString().padStart(2,'0')
month=month.toString().padStart(2,'0')
date=date.toString().padStart(2,'0')
hour=hour.toString().padStart(2,'0')
minute=minute.toString().padStart(2,'0')
second=second.toString().padStart(2,'0')
把代码封装一下使用:
1.vue使用
getCreatertime(e){
let create_time = parseInt(e)
let year = new Date(create_time).getFullYear();
let month = new Date(create_time).getMonth() + 1;
let date = new Date(create_time).getDate();
let hour = new Date(create_time).getHours();
let minute = new Date(create_time).getMinutes();
let second = new Date(create_time).getSeconds();
if(month < 10) {month = "0" + month}
if(date < 10) {date = "0" + date}
if(hour < 10) {hour = "0" + hour}
if(minute < 10) {minute = "0" + minute}
if(second < 10) {second = "0" + second}
return year + "-" + month + "-" + date+" "+ hour + ":" + minute+":"+second
},
orderTime=this.getCreatertime(el.orderTime)
2.
function timerun(create_time, fenge, start, end) {
var create_time = parseInt(create_time) * 1000 //这里获得的时间戳是s,需要*1000
var obj = []
var year = new Date(create_time).getFullYear();
var month = new Date(create_time).getMonth() + 1;
var date = new Date(create_time).getDate();
var hour = new Date(create_time).getHours();
var minute = new Date(create_time).getMinutes();
var second = new Date(create_time).getSeconds();
if(month < 10) {
month = "0" + month
}
if(date < 10) {
date = "0" + date
}
if(hour < 10) {
hour = "0" + hour
}
if(minute < 10) {
minute = "0" + minute
}
obj.push(year)
obj.push(month)
obj.push(date)
obj.push(hour)
obj.push(minute)
obj.push(second)
var b = obj.slice(start - 1, end);
var qi = "";
for(var i in b) {
qi = qi + b[i] + fenge
}
qi = qi.substring(0, qi.length - 1)
return qi
}
使用:
create_time:时间戳,单位是秒
fenge:分隔符,如:"-",":"
start:开始的位数(年月日时分秒,依次是123456)
end:结束的位数(年月日时分秒,依次是123456)