欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript獲取和操作時(shí)間戳的用法詳解

 更新時(shí)間:2025年04月21日 09:22:19   作者:人才程序員  
這篇文章主要介紹了JavaScript獲取和操作時(shí)間戳的相關(guān)資料,時(shí)間戳通常用于記錄時(shí)間、計(jì)算時(shí)間差、生成唯一的標(biāo)識(shí)符等,文章詳細(xì)講解了如何使用Date.now()和new?Date().getTime()獲取當(dāng)前時(shí)間戳,需要的朋友可以參考下

前言

時(shí)間戳在編程中有著非常廣泛的應(yīng)用,比如記錄事件發(fā)生的時(shí)間、計(jì)算時(shí)間差、生成唯一的標(biāo)識(shí)符等等。理解時(shí)間戳的使用非常重要,今天我們將一起來(lái)探討如何在 JavaScript 中獲取和操作時(shí)間戳。?

一、什么是時(shí)間戳? 

時(shí)間戳(Timestamp)是指自 1970年1月1日 00:00:00 UTC 到某個(gè)指定時(shí)間的毫秒數(shù)。它是計(jì)算機(jī)系統(tǒng)中最常用的時(shí)間表示方式。這個(gè)時(shí)間標(biāo)準(zhǔn)被稱為 Unix 時(shí)間戳 或 POSIX 時(shí)間戳。

二、JavaScript 獲取當(dāng)前時(shí)間戳 

在 JavaScript 中,獲取當(dāng)前的時(shí)間戳非常簡(jiǎn)單,通常有兩種常用的方法:

2.1 使用 Date.now() 獲取時(shí)間戳

Date.now() 返回的是自 1970 年 1 月 1 日 UTC 以來(lái)經(jīng)過(guò)的毫秒數(shù)。這是一個(gè)非常簡(jiǎn)單且常用的獲取時(shí)間戳的方法。

示例:

const timestamp = Date.now();
console.log(timestamp);  // 輸出當(dāng)前的時(shí)間戳(單位:毫秒)

2.2 使用 new Date().getTime() 獲取時(shí)間戳

new Date().getTime() 也返回當(dāng)前的時(shí)間戳,和 Date.now() 類似。兩者的區(qū)別在于,Date.now() 是靜態(tài)方法,而 new Date() 是實(shí)例化對(duì)象后調(diào)用。

示例:

const timestamp = new Date().getTime();
console.log(timestamp);  // 輸出當(dāng)前的時(shí)間戳(單位:毫秒)

三、時(shí)間戳的應(yīng)用場(chǎng)景 

3.1 獲取當(dāng)前時(shí)間并計(jì)算時(shí)間差

通過(guò)時(shí)間戳,你可以輕松計(jì)算兩個(gè)時(shí)間之間的差異。假設(shè)你需要計(jì)算某個(gè)任務(wù)的執(zhí)行時(shí)間,你可以記錄任務(wù)開始和結(jié)束時(shí)的時(shí)間戳,然后通過(guò)相減得到耗時(shí)。

示例:

// 任務(wù)開始時(shí)間
const start = Date.now();

// 模擬任務(wù)執(zhí)行
setTimeout(() => {
  // 任務(wù)結(jié)束時(shí)間
  const end = Date.now();

  // 計(jì)算耗時(shí)(單位:毫秒)
  const duration = end - start;
  console.log(`任務(wù)執(zhí)行時(shí)間:${duration} 毫秒`);
}, 2000);

3.2 轉(zhuǎn)換時(shí)間戳為日期時(shí)間格式

時(shí)間戳通常是一個(gè)數(shù)字,但我們經(jīng)常需要將其轉(zhuǎn)換為易讀的日期格式。在 JavaScript 中,你可以使用 Date 對(duì)象將時(shí)間戳轉(zhuǎn)換為日期。

示例:

const timestamp = Date.now();
const date = new Date(timestamp);
console.log(date.toString());  // 輸出類似 "Sat Feb 23 2025 12:34:56 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)" 的日期格式

你也可以使用 toLocaleString() 方法將日期格式化為特定的本地格式。

const dateStr = date.toLocaleString();
console.log(dateStr);  // 輸出類似 "2025/2/23 下午12:34:56" 的本地日期時(shí)間格式

3.3 將日期時(shí)間轉(zhuǎn)換為時(shí)間戳

如果你有一個(gè)特定的日期,并希望將其轉(zhuǎn)換為時(shí)間戳,可以通過(guò) Date.parse() 方法來(lái)實(shí)現(xiàn)。該方法將一個(gè)表示日期的字符串轉(zhuǎn)化為時(shí)間戳。

示例:

const dateStr = "2025-02-23T12:00:00";
const timestamp = Date.parse(dateStr);
console.log(timestamp);  // 輸出時(shí)間戳(單位:毫秒)

3.4 時(shí)間戳與計(jì)時(shí)器

時(shí)間戳還廣泛應(yīng)用于控制和記錄定時(shí)器(如 setTimeout 和 setInterval)的執(zhí)行時(shí)間。你可以利用時(shí)間戳計(jì)算任務(wù)間隔和延遲。

示例:

const start = Date.now();
setInterval(() => {
  const elapsed = Date.now() - start;
  console.log(`已運(yùn)行時(shí)間:${elapsed} 毫秒`);
}, 1000);  // 每秒打印一次已運(yùn)行的時(shí)間

四、總結(jié) 

時(shí)間戳在 JavaScript 中非常有用,常常用于記錄時(shí)間、計(jì)算時(shí)間差和處理異步操作。掌握如何獲取和操作時(shí)間戳,可以讓你更高效地進(jìn)行時(shí)間計(jì)算和時(shí)間相關(guān)的操作。

概念說(shuō)明示例代碼
獲取當(dāng)前時(shí)間戳使用 Date.now() 或 new Date().getTime() 獲取當(dāng)前時(shí)間的時(shí)間戳。const timestamp = Date.now();
計(jì)算時(shí)間差通過(guò)記錄開始時(shí)間和結(jié)束時(shí)間的時(shí)間戳,計(jì)算時(shí)間差。const duration = end - start;
時(shí)間戳轉(zhuǎn)換為日期格式使用 new Date(timestamp) 將時(shí)間戳轉(zhuǎn)換為日期對(duì)象,然后格式化為字符串。const date = new Date(timestamp); console.log(date.toString());
日期轉(zhuǎn)換為時(shí)間戳使用 Date.parse() 將日期字符串轉(zhuǎn)換為時(shí)間戳。const timestamp = Date.parse('2025-02-23T12:00:00');
時(shí)間戳與定時(shí)器的結(jié)合使用時(shí)間戳與定時(shí)器(setTimeout / setInterval)結(jié)合來(lái)控制時(shí)間。setInterval(() => { const elapsed = Date.now() - start; }, 1000);

希望通過(guò)這篇文章,你對(duì) JavaScript 中的時(shí)間戳有了更清晰的了解。

附:倒計(jì)時(shí)抽獎(jiǎng)案例

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>簡(jiǎn)單易用的倒計(jì)時(shí)js代碼</title>
<style>
*{ margin:0; padding:0; list-style:none;}
body{ font-size:18px; text-align:center;}
.time{ height:30px; padding:200px;}
</style>
</head>
<body>
    <div class="time">
        <span id="t_d">00天</span>
        <span id="t_h">00時(shí)</span>
        <span id="t_m">00分</span>
        <span id="t_s">00秒</span>
    </div>
<script>
   function GetRTime(){
   		//雙十一倒計(jì)時(shí)抽獎(jiǎng)
       var EndTime= new Date('2018/11/11 00:00:00');
       var NowTime = new Date();
       var t =EndTime.getTime() - NowTime.getTime();
       var d=Math.floor(t/1000/60/60/24);
       var h=Math.floor(t/1000/60/60%24);
       var m=Math.floor(t/1000/60%60);
       var s=Math.floor(t/1000%60);

       document.getElementById("t_d").innerHTML = d + "天";
       document.getElementById("t_h").innerHTML = h + "時(shí)";
       document.getElementById("t_m").innerHTML = m + "分";
       document.getElementById("t_s").innerHTML = s + "秒";
   }
   setInterval(GetRTime,0);
  
</script>
</body>
</html> 

到此這篇關(guān)于JavaScript獲取和操作時(shí)間戳用法詳解的文章就介紹到這了,更多相關(guān)JS時(shí)間戳使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • HTML中的setCapture和releaseCapture使用介紹

    HTML中的setCapture和releaseCapture使用介紹

    setCapture函數(shù)的作用就是將后續(xù)的mouse事件都發(fā)送給這個(gè)對(duì)象,releaseCapture就是將鼠標(biāo)事件還回去,由 document、window、object之類的自行來(lái)處理。這樣就保證了在拖動(dòng)的過(guò)程中,不會(huì)由于經(jīng)過(guò)了其它的元素而受到干擾
    2012-03-03
  • Django 中的templates使用示例詳解

    Django 中的templates使用示例詳解

    Django模板系統(tǒng)提供了一套豐富的工具集,能夠幫助開發(fā)者將動(dòng)態(tài)數(shù)據(jù)有效地渲染到HTML頁(yè)面中,它通過(guò)特殊的語(yǔ)法支持變量插入、邏輯標(biāo)簽和過(guò)濾器的使用,本文給大家介紹Django 中的templates使用,感興趣的朋友一起看看吧
    2024-10-10
  • Javascript的各種節(jié)點(diǎn)操作實(shí)例演示代碼

    Javascript的各種節(jié)點(diǎn)操作實(shí)例演示代碼

    實(shí)例演示對(duì)javascript的節(jié)點(diǎn)的各種操作。包括hasChildNodes(),removeChild(),appendChild(),replaceChild(),insertBefore(),cloneNode()等
    2012-06-06
  • 微信小程序 scroll-view 水平滾動(dòng)實(shí)現(xiàn)過(guò)程解析

    微信小程序 scroll-view 水平滾動(dòng)實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了微信小程序 scroll-view 水平滾動(dòng)實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • js函數(shù)內(nèi)變量的作用域分析

    js函數(shù)內(nèi)變量的作用域分析

    這篇文章主要介紹了js函數(shù)內(nèi)變量的作用域分析,以實(shí)例形式簡(jiǎn)單分析了js函數(shù)的變量調(diào)用順序,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • JS實(shí)現(xiàn)隨機(jī)點(diǎn)名器

    JS實(shí)現(xiàn)隨機(jī)點(diǎn)名器

    這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)隨機(jī)點(diǎn)名器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • 極致之美——百行代碼實(shí)現(xiàn)全新智能語(yǔ)言

    極致之美——百行代碼實(shí)現(xiàn)全新智能語(yǔ)言

    極致之美——百行代碼實(shí)現(xiàn)全新智能語(yǔ)言...
    2007-03-03
  • JS中產(chǎn)生20位隨機(jī)數(shù)以0-9為例也可以是a-z A-Z

    JS中產(chǎn)生20位隨機(jī)數(shù)以0-9為例也可以是a-z A-Z

    本節(jié)主要介紹了JS如何產(chǎn)生隨機(jī)數(shù),本例產(chǎn)生20位隨機(jī)數(shù)以0-9為例也可以是a-z A-Z,需要的朋友可以參考下
    2014-08-08
  • JavaScript如何實(shí)現(xiàn)元素全排列實(shí)例代碼

    JavaScript如何實(shí)現(xiàn)元素全排列實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于JavaScript如何實(shí)現(xiàn)元素全排列的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用JavaScript具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • window.onload 加載完畢的問(wèn)題及解決方案(上)

    window.onload 加載完畢的問(wèn)題及解決方案(上)

    我們經(jīng)常使用 window.onload 來(lái)處理頁(yè)面,當(dāng)頁(yè)面加載完成做一些事情。但這個(gè) window.onload 是頁(yè)面全部加載完成,甚至包括圖片,而我們實(shí)際上經(jīng)常需要的是文檔 DOM 加載完畢!
    2009-07-07

最新評(píng)論