**
近期在寫後臺管理系統的項目,時間戳,中國標準時間以及日期換算成天數。用到的頻率比較高
- 中國標準時間(Thu May 12 2016 08:00:00 GMT+0800 )轉化爲yyyy-MM-dd格式
例如:var chinaStandard= 'Thu May 12 2020 08:00:00 GMT+0800' (後臺返回的標準時間)
var date = new Date(chinaStandard);
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var h = date.getHours();
var minute = date.getMinutes();
minute = minute < 10 ? ('0' + minute) : minute;
let time = y + '-' + m + '-' + d+' '+h+':'+minute; //這裏如果不需要小時 分 後邊的可以不需要拼接
- 時間戳(1590200466)轉換成yyyy-mm-dd這種時間格式的方法:
var timeC = '1590200466'
var date = new Date(parseInt(timeC) * 1000); //如果後臺的返回的時間戳沒有*1000 自己*上,如果後臺返回的已經*過1000 則不用加
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var time = y+'-'+m+'-'+d;
- 換算日期之間的相差天數
let date1 = new Date(minDate); minDate這裏可以是中國標準時間或者yyyy-mm-dd格式這裏是不影響換算的
let date2 = new Date(maxDate); 同minDate
date1 = new Date(date1.getFullYear(), date1.getMonth(), date1.getDate());
date2 = new Date(date2.getFullYear(), date2.getMonth(), date2.getDate());
const diff = date2.getTime() - date1.getTime(); 這裏注意日期之間結束和開始,否則相減出來的很有肯能是負數
const day = diff / (24 * 60 * 60 * 1000);
- js計算幾天後的日期
var date = new Date();
//這裏的day就是你要加的天數
date.setDate(date.getDate()+day+1); //這裏1 根據要不要獲取當天的日期 看自己的需求決定加還是不加
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
console.log(date.getFullYear() +"-"+ m +"-"+ d);
近期時間類型上的轉換就那麼多,後期有用到其他的會更新,覺得有幫助的話,可以關注一下。一起分享,討論