js 將php生成的time()類型時間戳轉化成具體date格式的日期


需求:
     將首頁顯示的int類型的時間轉化為date類型的時間格式:
     QuestionModel獲取到question列表數據時,包括question['pub_time'],在顯示時,需要將其轉化為具體的時間格式進行顯示。
插入問題記錄時,pub_time字段是使用php的time()函數,獲取到當前的時間戳整數,然后插入到mysql數據表中的,所以其格式是int類型。
 

 

但在view視圖的html中顯示時,需要將其格式化成時間格式進行顯示。但又因為每一條問題為了便於分頁顯示數據都是通過js拼接的,所以轉換的功能就依靠js了。
 

 

在網上搜到關於js將int轉換為date格式數據的答案都是相互拷貝,並且也不實用,所以看了php和js官方手冊后,了解到:
  1. php中time()是返回當前的unix時間戳,精確到秒數    https://secure.php.net/manual/zh/function.time.php
                 
  1. js中new Date()可以通過給Date傳遞參數,而將int數據轉換成date類型數據,參數精確到毫秒數   https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date
 
 
 
現在問題就轉換的很簡單了,通過js Date對象轉換成相應的年月日就可以了,默認情況下,date變量的值為時間格式字符串。
 
var time = questions[i]['pub_time']; //1483970035
var date = new Date(time*1000);
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
des = year + '-' + month + '-' + day;

 

 

 實現的結果:

真的只是秒數和毫秒數的差別,忽略之后就困惑了很久。


免責聲明!

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



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