js时间戳转时间(日期格式)

7,776 阅读1分钟

1、日期格式转时间戳

声明一个变量,使用new Date(str) =》注意str是日期

var timestamp1 = Date.parse(new Date());
var timestamp2 = (new Date()).valueOf();
var timestamp3 = new Date().getTime();
var oldTime = (new Date("2015/06/23 08:00:20")).getTime()/1000;
getTime()返回数值的单位是毫秒。

2、封装成一个函数(now(是代表当前的时间))

function TimeDate(now) { 
     var year=now.getFullYear(); 
     var month=now.getMonth()+1; 
     var date=now.getDate(); 
     var hour=now.getHours(); 
     var minute=now.getMinutes(); 
     var second=now.getSeconds(); 
     return year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; 
} 
//如果记得时间戳是毫秒级的就需要*1000 不然就错了记得转换成整型
var d=new Date(1230999938); 
alert(formatDate(d));

最后返回的结果是2021-11-11 19:00:00这样的格式

3、还可以使用replace方法进行转置

function getLocalTime(nS) { 
       return new Date(parseInt(nS) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " "); 
    } 
       alert(getLocalTime(1177824835)); 

弹出:2021-12-20 18:00:00这个格式

二、时间戳转时间

1、使用.Date toLocaleString方法

ns是时间戳

function getLocalTime(nS) {  
 return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' ');  
}

封装成一个日期格式化函数进行转置

formatDate(str){
        let date = new Date(str);
        let year = date.getFullYear();
        let month= date.getMonth() + 1;
        month= MMmonth< 10 ? ('0' + month) : month;
        let day = date.getDate();
        day = day < 10 ? ('0' + day ) : day ;
        let h = date.getHours();
        h = h < 10 ? ('0' + h) : h;
        let m = date.getMinutes();
        m = m < 10 ? ('0' + m) : m;
        let s = date.getSeconds();
        s = s < 10 ? ('0' + s) : s;
        return year + '-' + month + '-' + day + ' ' + h + ':' + m + ':' + s;
      }