时间戳 格式互相转化 年-月-日 时:分:秒
dayjs插件
<script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>
比如根据时间戳直接获取今天周几、几号……
let now = new Date()
// 获取当前的时间戳
let time = now.getTime()
// 周几 0-6
let week = dayjs(time).day()
// 几号
let day = dayjs(time).date()
一.时间戳 转换为时间
1.js获取当前时间戳的方法
function getLocalTime(nS) {
return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' ');
}
Date 对象用于处理日期与时间。
创建 Date 对象: new Date()
以下四种方法同样可以创建 Date 对象:
var d = new Date();
var d = new Date(milliseconds); // milliseconds 为毫秒
var d = new Date(dateString);
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);
Date 对象常用的方法有:
date.getFullYear(); // 获取完整的年份(4位,1970)
date.getMonth(); // 获取月份(0-11,0代表1月,用的时候记得加上1)
date.getDate(); // 获取日(1-31)
date.getTime(); // 获取时间(从1970年1月1日开始的毫秒数)
date.getHours(); // 获取小时数(0-23)
date.getMinutes(); // 获取分钟数(0-59)
date.getSeconds(); // 获取秒数(0-59)
以下实例我们将时间戳转换 1655185405 秒转换为 yyyy-MM-dd hh:mm:ss 格式:
var date = new Date(1655185405 * 1000); // 参数需要毫秒数,所以这里将秒数乘于 1000
Y = date.getFullYear() + '-';
M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
D = date.getDate() + ' ';
h = date.getHours() + ':';
m = date.getMinutes() + ':';
s = date.getSeconds();
document.write(Y+M+D+h+m+s);
function shijianc(time) {
let date = new Date(time)
let Y = date.getFullYear() + '-'
let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
let D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
let h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'
let m = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':'
let s = (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds())
return Y + M + D + h + m + s
}
获取当前时间的时间戳
let now = new Date();
let nowTime = now.getTime(); //获取当前日期的时间戳
console.log(shijianc(nowTime), '当前日期是');
获取几天后的日期
// 获取七天后的时间戳
let newTime = nowTime + 7 * 24 * 60 * 60 * 1000
console.log(shijianc(newTime), '七天后的日期是');
时间戳分别转换为天,小时,分钟,秒
format(time){
let day = Math.floor(time/(1000*60*60*24))
let hours = Math.floor((time/(1000*60*60))%24)
let minutes = Math.floor((time/(1000*60))%60)
let seconds = Math.floor((time/1000)%60)
return day+'天'+hours+'小时'+minutes+'分钟'+seconds+'秒'
},
2021-01-11T09:14:46.000+0000转换为正常年月日
formatOrderTime(time){
let data = time.substr(0, 19);
let newDate = new Date(new Date(data.replace(/T/g, ' ').replace(/-/g, '/')).getTime() + 8 * 60 * 60 * 1000)
let d = new Date(newDate);
let datetime=d.getFullYear() + '/' + (d.getMonth() + 1) + '/' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();
return datetime
}
出生日期转换为岁、月、天
function formatDate(date) {
let currentTime = new Date().getTime()
let dateTime = (new Date(date)).getTime()
let diff = currentTime - dateTime
let day = Math.floor(diff / (1000 * 60 * 60 * 24))
let year = Math.trunc(day / 365)
let month = Math.trunc((day % 365) / 30)
let remainDays = Math.trunc((day % 365) % 30)
return year + '岁' + month + '个月' + remainDays + '天'
}
二。将日期转换为时间戳
var strtime = '2022-04-23 12:25:19';
var date = new Date(strtime);
// 通过以下三种方式获时间戳
time1 = date.getTime();
time2 = date.valueOf();
time3 = Date.parse(date);
实例:
var strtime = '2022-04-23 12:25:19';
var date = new Date(strtime);
// 通过以下三种方式获时间戳
time1 = date.getTime();
time2 = date.valueOf();
time3 = Date.parse(date);
document.getElementById("time1").innerHTML= time1;
document.getElementById("time2").innerHTML= time2;
document.getElementById("time3").innerHTML= time3;
使用 Date() 获取系统当前时间,使用 getFullYear()、getMonth()、getDate() 、getHours()、getMinutes()、getSeconds() 等方法生成特定格式的时间 :
var today = new Date();
//日期
var DD = String(today.getDate()).padStart(2, '0'); // 获取日
var MM = String(today.getMonth() + 1).padStart(2, '0'); //获取月份,1 月为 0
var yyyy = today.getFullYear(); // 获取年
// 时间
hh = String(today.getHours()).padStart(2, '0'); //获取当前小时数(0-23)
mm = String(today.getMinutes()).padStart(2, '0'); //获取当前分钟数(0-59)
ss = String(today.getSeconds()).padStart(2, '0'); //获取当前秒数(0-59)
today = yyyy + '-' + MM + '-' + DD + ' ' + hh + ':' + mm + ':' + ss;
document.write(today);
```
三、将年月日转换为 - - -
```
function(dateTime){
var approvedates = dateTime.replace(/[年月]/g,"-");
var approvedate = approvedates.replace(/[日]/," ");
var time = approvedate + ":00";
return time;
}
```
转换为 / / /
function(dateTime){
var approvedates = dateTime.replace(/[年月]/g,"-");
var approvedate = approvedates.replace(/[日]/," ");
var time = approvedate + ":00";
return time;
}