Js獲取時間,當前,一周前,一月前的時間,時間戳轉換,時間格式化,日期格式化


時間格式化參考:https://www.cnblogs.com/zhoushuang0426/p/10559172.html

js獲取當前時間戳;指定時間轉換時間戳;時間戳轉換時間:參考https://blog.csdn.net/qq_37896578/article/details/90080953?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.add_param_isCf

當天0點的時間戳

const timestamp =
        new Date(
          new Date(new Date().toLocaleDateString()).getTime()
        ).getTime() / 1000
      console.log('-----')
      console.log(timestamp)

一周前的0點時間戳

const timestamp =
        new Date(
          new Date(new Date().toLocaleDateString()).getTime() -
            7 * 24 * 3600 * 1000
        ).getTime() / 1000
      console.log(timestamp)

當天的30天前的0點時間戳

const timestamp =
        new Date(
          new Date(new Date().toLocaleDateString()).getTime() -
            30 * 24 * 3600 * 1000
        ).getTime() / 1000
      console.log(timestamp)

 

在線時間戳轉換工具:https://www.matools.com/timestamp

 

將時間戳轉換為Y-m-d H:i:s格式:

export function timestampToTime(timestamp) {
  const date = new Date(timestamp * 1000) // 時間戳為10位需*1000,時間戳為13位的話不需乘1000
  const year = date.getFullYear()
  const month =
    date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1
  const day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate()
  const hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
  const minutes =
    date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
  const seconds =
    date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
  return (
    year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds
  )
}

 

 

js獲取日期,獲取今天,昨天,三天前,七天前 日期函數

FunGetDateStr: function (p_count) {
            var dd = new Date();
            dd.setDate(dd.getDate() + p_count);//獲取p_count天后的日期
            var y = dd.getFullYear();
            var m = dd.getMonth() + 1;//獲取當前月份的日期
            if( m <10){
                m = '0'+m;
            }
            var d = dd.getDate();
            if( d <10){
                d = '0'+d;
            }
            return y + "-" + m + "-" + d;
        }

 var three = dates.FunGetDateStr(-3);
            $("#starttime").val(three);

 

 獲取距離當前時間12小時的每個時間段

["07:08", "08:08", "09:08", "10:08", "11:08", "12:08", "13:08", "14:08", "15:08", "16:08", "17:08", "18:08"]

// 需引入moment.js
//
獲取當前時間的前12個小時的日期數組 export function getHoursArr() { const arr = [] for (let i = 0; i < 12; i++) { const unix = new Date(new Date().getTime() - i * 60 * 60 * 1000) const date = moment(unix).format('HH:mm') arr.push(date) } return arr }

 

 

將日期格式2018-09-10 08:00:00轉化為時間戳:

//獲取到的時間
var nowTime = '2018-09-11 13:50:52';
 
var thisTime = nowTime;
thisTime = thisTime.replace(/-/g, '/');
var time = new Date(thisTime);
time = time.getTime();
console.log(time);  // 1536645052000

JS 日期格式和時間戳相互轉化:

1. 將時間戳轉換成日期格式:

function timestampToTime(timestamp) {
        var date = new Date(timestamp * 1000);//時間戳為10位需*1000,時間戳為13位的話不需乘1000
        var Y = date.getFullYear() + '-';
        var M = padding0(date.getMonth()+1,2)+ '-';
        var D = padding0(date.getDate(),2)+ ' ';
        var h = padding0(date.getHours(),2) + ':';
        var m = padding0(date.getMinutes(),2) + ':';
        var s = padding0(date.getSeconds(),2);
        return Y+M+D+h+m+s;
    }
    timestampToTime(1561040280);
    console.log(timestampToTime(1561040280));//2019-06-17 22:18:54

注意:如果是Unix時間戳記得乘以1000。比如:PHP函數time()獲得的時間戳就要乘以1000。

(padding0方法是數字前填充0  詳見:https://blog.csdn.net/qq_29483485/article/details/81458856

2、將日期格式轉換成時間戳:

function getUnixTime(dateStr){
    var newstr = dateStr.replace(/-/g,'/'); 
    var date =  new Date(newstr); 
    var time_str = date.getTime().toString();
    return time_str.substr(0, 10);
}
 
getUnixTime('2019-06-17 23:11:54');
console.log(getUnixTime('2019-06-17 23:11:54'));//1560784314

 獲得距離一個時間點偏移的時間點:

獲得時間戳 - 偏移的時間戳:

比如獲得距離當前11小時的時間戳:

const timeStamp = new Date().getTime() - 11 * 60 * 60 * 1000

轉換成10位的字符串:

const timeStamp = (new Date().getTime() - 11 * 60 * 60 * 1000 + '').substr(0, 10)

距離當前 50分鍾的時間戳:

const timeStamp = new Date().getTime() -  50 * 60 * 1000

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM