js將中國標準時間轉化爲年月日時分秒(yyyy-mm-dd)格式以及時間戳,日期,天數之間的轉換

**

近期在寫後臺管理系統的項目,時間戳,中國標準時間以及日期換算成天數。用到的頻率比較高

  • 中國標準時間(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);

近期時間類型上的轉換就那麼多,後期有用到其他的會更新,覺得有幫助的話,可以關注一下。一起分享,討論

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章