一、時間戳的概念
時間戳,指格林威治時間1970年01月01日00時00分00秒起至現在的總秒數。JavaScript中的時間是以毫秒為單位的,所以需要將秒數乘以1000來轉換成JavaScript中的毫秒數。
二、時間戳轉時間格式
在微信小程序中,時間戳可以通過內置的方法進行轉換。
/**
* 時間戳轉換成時間格式
*
* @param {number} timestamp 時間戳
* @param {string} format 時間格式(可選,默認為yyyy-MM-dd hh:mm:ss)
* @returns {string} 轉換後的時間
*/
function formatTime(timestamp, format = 'yyyy-MM-dd hh:mm:ss') {
const date = new Date(timestamp * 1000);
const year = date.getFullYear();
const month = addZero(date.getMonth() + 1);
const day = addZero(date.getDate());
const hour = addZero(date.getHours());
const minute = addZero(date.getMinutes());
const second = addZero(date.getSeconds());
return format.replace('yyyy', year)
.replace('MM', month)
.replace('dd', day)
.replace('hh', hour)
.replace('mm', minute)
.replace('ss', second);
}
/**
* 在數字前補0
*
* @param {number} num 數字
* @returns {string} 補0後的字符串
*/
function addZero(num) {
return num < 10 ? '0' + num : num;
}
三、時間格式化
上述方法只是將時間戳轉換成了指定的時間格式,如果需要格式化時間,可以使用date-fns這個JavaScript庫,它提供了非常豐富的API供我們使用。
四、示例代碼
{{ formatTime(timestamp) }}
// js代碼
import { format } from 'date-fns';
Page({
data: {
timestamp: 1605963200,
},
formatTime(timestamp, format = 'yyyy-MM-dd hh:mm:ss') {
const date = new Date(timestamp * 1000);
return format(date);
},
});
五、小結
本文詳細介紹了微信小程序中時間戳轉時間格式的方法,根據需要不同,可以選擇使用內置的方法或藉助第三方庫來進行時間格式化。
原創文章,作者:KZQPC,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/369516.html
微信掃一掃
支付寶掃一掃