js时间戳转为日期格式


转自:http://wyoojune.blog.163.com/blog/static/57093325201131193650725/

这个在php+mssql(日期类型为datetime)+ajax的时候才干用到,js须要把时间戳转为为普通格式,一般的情况下可能用不到

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

弹出:2010年12月23日 10:53

也能够用:

<script>   
function getLocalTime(nS) {   
    return new Date(parseInt(nS) * 1000).toLocaleString().substr(0,17)}   
alert(getLocalTime(1293072805));   
</script>   

假设想弹出:2010-10-20 10:00:00这个格式的也好办

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


另外我也参考了別的網站的一些東東,例如以下:

function   formatDate(now)   {   
          var   year=now.getYear();   
          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;   
          }   
   
          var   d=new   Date(1230999938);   
          alert(formatDate(d));

特別要提一下的是:

從MySQL傳過來的數據,有可能是字符串,要把他們轉化為數字,數字也要*1000,因為JS里用的是毫秒數!我的例如以下:

var time_num = $("date",message).text();
        var time_num = parseInt(time_num);     //传回来的是个字符串
        var d = new Date(time_num*1000);       //這個非常重要,要*1000
        var temp_time = formatDate(d);


第一個样例做的就比较正規,什麽情況都考慮到了!

原文地址:https://www.cnblogs.com/zfyouxi/p/4008478.html