CFAbsoluteTime 是自 2001 年 1 月 1 日 00:00:00 UTC 以來經過的時間。這是 Apple 設備上的標準時間格式。另一方面,日期對象是 JavaScript 中的內置對象,用于表示日期和時間值。它有許多方法用于提供格式設置以及將日期和時間從一種形式轉換為另一種形式。
CFAbsolute Time 和 JavaScript Date 對象之間的主要區別在于它們的格式。 CFAabsolute 時間是一個數值,表示自 Unix 紀元以來的毫秒數,而日期對象是表示相對于客戶端瀏覽器的特定日期和時間、年、月、日、小時、分鐘、秒和毫秒的對象。
在本教程中我們已經學習了兩者 –
將 CFAbsoluteTime 轉換為日期對象
將日期對象轉換為 CFAbsoluteTime
將 CFAbsoluteTime 轉換為日期對象
CFAbsoluteTime 是自 2001 年 1 月 1 日 00:00:00 UTC 以來經過的時間,而日期對象是自 1970 年 1 月 1 日 00:00:00 UTC 以來經過的時間,因此我們需要將它們之間的差異添加到 CFAbsoluteTime 中,是978307200,單位也是毫秒,所以另外,我們需要將結果乘以1000。
讓我們看看如何獲??得更多許可的分步方法。
初始化 CFAbsoluteTime 值,我們將其轉換為 Date 對象值。
創建一個新的 Date 對象,傳遞初始化值,并將 978307200 添加到其中,然后乘以 1000(以毫秒為單位)。
最后,打印結果。
示例
在此示例中,我們使用 JavaScript 將 CFAbsoluteTime 轉換為日期對象。
<!DOCTYPE html> <html lang="en"> <head> <title>Converting CFAbsoluteTime to Date Object in JavaScript</title> </head> <body> <h2> Convert CFAbsoluteTime to Date Object </h2> <p id="input">CFAbsoluteTime: </p> <p id="output">Date Object: </p> <script> // CFAbsoluteTime let CFAbsoluteTime = 641347496.743657; document.getElementById("input").innerHTML += CFAbsoluteTime ; // Convert CFAbsoluteTime to Date Object let date = new Date((CFAbsoluteTime + 978307200) * 1000); // Display the result document.getElementById("output").innerHTML += date; </script> </body> </html>
登錄后復制
將日期對象轉換為 CFAbsoluteTime
要將 CFAbsoluteTime 轉換為 Date 對象,我們需要執行與之前將 CFAbsoluteTime 轉換為 Date 對象完全相反的操作。
以下是在 JavaScript 中將 CFAbsoluteTime 轉換為 Date 對象的分步過程 –
使用作為參數傳遞的日期和時間初始化 Date 對象,我們將其轉換為 CFAbsoluteTime。
然后對上述對象使用 getTime() 方法,并將其除以 1000,記住在上面的步驟中我們已經乘以 1000,這里我們只是反轉該過程。
最后用結果減去 978307200,就像我們在將 CFAbsoluteTime 轉換為 Date 對象時添加一樣。
最后,打印結果。
示例
在此示例中,我們使用 JavaScript 將 CFAbsoluteTime 轉換為 Date 對象。
<!DOCTYPE html> <html lang="en"> <head> <title>Converting Date Object to CFAbsoluteTime JavaScript</title> </head> <body> <h2> Convert Date Object to CFAbsoluteTime </h2> <p id="input">Date Object: </p> <p id="output">CFAbsoluteTime: </p> <script> // Creting date object var date = new Date("June 15, 2023 16:16:36"); document.getElementById("input").innerHTML += date; // convert date to CFAbsoluteTime var CFAbsoluteTime = (date.getTime() / 1000) - 978307200; // display CFAbsoluteTime document.getElementById("output").innerHTML += CFAbsoluteTime; </script> </body> </html>
登錄后復制
摘要
讓我們總結一下我們在本教程中學到的內容。我們看到,要將 CFAbsoluteTime 轉換為 Date 對象或將 Date 對象轉換為 CFAbsoluteTime,我們只需要執行簡單的數學運算。我們需要看到這兩個時間之間有兩個差異,CFAbsoluteTime 是自 UTC 2001 年 1 月 1 日 00:00:00 以來經過的時間,而 Date 對象是自 1970 年 1 月 1 日 00:00 以來經過的時間: 00 世界標準時間。因此,它們之間的差是 978307200,我們可以用它通過加法或減法將一種形式轉換為另一種形式。第二個是 CFAbsoluteTime 的單位是毫秒,我們可以通過乘以 1000 進行轉換,反之亦然。
以上就是如何在 JavaScript 中將 CFAbsoluteTime 轉換為日期對象,反之亦然?的詳細內容,更多請關注www.92cms.cn其它相關文章!