時間戳是指某個時間點相對於某個固定時間的計時值,是一個長整數,通常是1970年1月1日00:00:00(UTC)起至現在的毫秒數。在Web開發中,經常需要使用時間戳,如用於存儲時間,計算時間差等等。在JavaScript中,可以通過多種方式生成時間戳。
一、Date對象生成時間戳
// 獲取當前時間戳
var timestamp = new Date().getTime();
console.log(timestamp); // 輸出當前時間毫秒數
通過獲取Date對象的getTime()方法,可以得到當前時間的毫秒數。如果需要獲取指定時間的時間戳,可以傳入該時間的年、月、日等參數,如下所示:
var timestamp = new Date(2022, 0, 1, 0, 0, 0).getTime();
console.log(timestamp); // 輸出2022年1月1日零點的毫秒數
此外,還可以使用Date對象的valueOf()方法生成當前時間的時間戳:
var timestamp = (new Date()).valueOf();
console.log(timestamp); // 輸出當前時間毫秒數
二、new Date().toISOString()生成時間戳
// 獲取當前時間的ISO格式字符串
var isoStr = new Date().toISOString();
console.log(isoStr); // 輸出形如"2022-05-25T07:56:20.206Z"的字符串
// 將ISO格式字符串轉換為毫秒數時間戳
var timestamp = (new Date(isoStr)).getTime();
console.log(timestamp); // 輸出當前時間毫秒數
通過使用Date對象的toISOString()方法,可以獲得當前時間的ISO格式字符串。將該字符串傳入Date對象的構造函數,即可獲得該時間的時間戳。
三、Math對象生成時間戳
var timestamp = Math.floor(Date.now());
console.log(timestamp); // 輸出當前時間毫秒數
通過使用Date.now()方法獲取當前時間的毫秒數,並結合Math.floor()方法向下取整,即可得到當前時間的時間戳。
四、performance對象生成時間戳
var timestamp = performance.now();
console.log(timestamp); // 輸出當前時間相對於navigationStart的毫秒數
通過使用performance對象的now()方法,可以獲取當前時間相對於網頁開始加載的時間(即navigationStart)的毫秒數。需要注意的是,performance.now()返回的值精度高,但瀏覽器不一定支持。
五、總結
通過本文的介紹,我們學習了JavaScript中生成時間戳的幾種方式,包括使用Date對象、new Date().toISOString()方法、Math對象和performance對象。其中,使用Date對象生成時間戳是最常用的方式,而其他方法則可以根據需要選擇使用。
原創文章,作者:QCTRI,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/360502.html