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

JavaScript獲取時間戳的方法總結(jié)

 更新時間:2023年09月07日 11:33:12   作者:星星那樣亮  
JavaScript獲得時間戳的方法有五種,后四種都是通過實例化時間對象new Date() 來進(jìn)一步獲取當(dāng)前的時間戳,下面我們就一起學(xué)習(xí)一下具體獲取的方法吧

一、JavasCRIPT時間轉(zhuǎn)時間戳

JavaScript獲得時間戳的方法有五種,后四種都是通過實例化時間對象new Date() 來進(jìn)一步獲取當(dāng)前的時間戳,JavaScript處理時間主要使用時間對象Date。

方法一:Date.now()

Date.now()可以獲得當(dāng)前的時間戳:

console.log(Date.now()) //1642471441587

方法二:Date.parse()

Date.parse()將字符串或者時間對象直接轉(zhuǎn)化成時間戳:

Date.parse(new Date()) //1642471535000Date.parse("2022/1/18 10:05") //1642471500000

注意:不推薦這種辦法,毫秒級別的數(shù)值被轉(zhuǎn)化為000。

方法三:valueOf()

通過valueOf()函數(shù)返回指定對象的原始值獲得準(zhǔn)確的時間戳值:

(new Date()).valueOf() //1642471624512

方法四:getTime()

通過原型方法直接獲得當(dāng)前時間的毫秒值,準(zhǔn)確:

new Date().getTime() //1642471711588

方法五:Number

將時間對象轉(zhuǎn)化為一個number類型的數(shù)值,即時間戳

Number(new Date()) //1642471746435

二、js時間戳轉(zhuǎn)時間

我們可以接用 new Date(時間戳) 格式轉(zhuǎn)化獲得當(dāng)前時間,比如:

new Date(1472048779952)Wed Aug 24 2016 22:26:19 GMT+0800 (中國標(biāo)準(zhǔn)時間)

注意:時間戳參數(shù)必須是Number類型,如果是字符串,解析結(jié)果:Invalid Date。

如果后端直接返回時間戳給前端,前端如何轉(zhuǎn)換呢?下面介紹2種實現(xiàn)方式

方法一:生成'2022/1/18 上午10:09 '格式

function getLocalTime(n) {return new Date(parseInt(n)).toLocaleString().replace(/:\d{1,2}$/,' ');}getLocalTime(1642471746435) //'2022/1/18 上午10:09 '

也可以用如下,想取幾位就幾位,注意,空格也算!

function getLocalTime(n) {return new Date(parseInt(n)).toLocaleString().substr(0,14)}getLocalTime(1642471746435) //'2022/1/18 上午10'

或者利用正則:

function  getLocalTime(n){return new Date(parseInt(n)).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");}getLocalTime  (1642471746435)  //'2022/1/18 上午10:09:06'

方法二:生成'yyyy-MM-dd hh:mm:ss '格式

先轉(zhuǎn)換為data對象,然后利用拼接正則等手段來實現(xiàn):

function getData(n){n=new Date(n)return n.toLocaleDateString().replace(///g, "-") + " " + n.toTimeString().substr(0, 8)}getData(1642471746435) //'2022-1-18 10:09:06'

不過這樣轉(zhuǎn)換在某些瀏覽器上會出現(xiàn)不理想的效果,因為toLocaleDateString()方法是因瀏覽器而異的,比如 IE為"2016年8月24日 22:26:19"格式 ;搜狗為"Wednesday, August 24, 2016 22:39:42"

可以通過分別獲取時間的年月日進(jìn)行拼接,這樣兼容性更好:

function getData(n) {let now = new Date(n),y = now.getFullYear(),m = now.getMonth() + 1,d = now.getDate();return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8);}getData(1642471746435) //'2022-1-18 10:09:06'

三、知識普及

1、當(dāng)前系統(tǒng)區(qū)域設(shè)置格式(toLocaleDateString和toLocaleTimeString)

(new Date()).toLocaleDateString() + " " + (new Date()).toLocaleTimeString()//'2022/1/18 上午10:30:30'

2、普通字符串(toDateString和toTimeString)

(new Date()).toDateString() + " " + (new Date()).toTimeString()//'Tue Jan 18 2022 10:30:50 GMT+0800 (中國標(biāo)準(zhǔn)時間)'

3、格林威治標(biāo)準(zhǔn)時間(toGMTString)

(new Date()).toGMTString()//'Tue, 18 Jan 2022 02:31:10 GMT'

4、全球標(biāo)準(zhǔn)時間(toUTCString)

(new Date()).toUTCString()//'Tue, 18 Jan 2022 02:31:25 GMT'

5、Date對象字符串(toString)

(new Date()).toString()'Tue Jan 18 2022 10:31:44 GMT+0800 (中國標(biāo)準(zhǔn)時間)'

Date對象構(gòu)造函數(shù)

Date對象具有多種構(gòu)造函數(shù):

new Date()
new Date(milliseconds)
new Date(datestring)
new Date(year, month)
new Date(year, month, day)
new Date(year, month, day, hours)
new Date(year, month, day, hours, minutes)
new Date(year, month, day, hours, minutes, seconds)
new Date(year, month, day, hours, minutes, seconds, microseconds)

Date對象構(gòu)造函數(shù)參數(shù)說明: 

milliseconds - 距離JavaScript內(nèi)部定義的起始時間1970年1月1日的毫秒數(shù)
datestring - 字符串代表的日期與時間。此字符串可以使用Date.parse()轉(zhuǎn)換
year - 四位數(shù)的年份,如果取值為0-99,則在其之上加上1900
month - 0(代表一月)-11(代表十二月)之間的月份
day - 1-31之間的日期
hours - 0(代表午夜)-23之間的小時數(shù)
minutes - 0-59之間的分鐘數(shù)
seconds - 0-59之間的秒數(shù)
microseconds - 0-999之間的毫秒數(shù)

Date對象返回值 

如果沒有任何參數(shù),將返回當(dāng)前日期; 

如果參數(shù)為一個數(shù)字,將數(shù)字視為毫秒值,轉(zhuǎn)換為日期

如果參數(shù)為一個字符串,將字符串視為日期的字符串表示,轉(zhuǎn)換為日期

還可以使用六個構(gòu)造函數(shù)精確定義,并返回時間 

var d1 = new Date();document.write(d1.toString());var d2 = new Date("2009-08-08 12:12:12); document.write(d2.toString()); var d3 = new Date(2009, 8, 8); document.write(d3.toString());

Date做為JavaScript的一種內(nèi)置對象,必須使用new的方式創(chuàng)建。 

Date對象在JavaScript內(nèi)部的表示方式是,距1970年1月1日午夜(GMT時間)的毫秒數(shù)(時間戳),我們在這里也把Date的內(nèi)部表示形式稱為時間戳。

可以使用getTime()將Date對象轉(zhuǎn)換為Date的時間戳,方法setTime()可以把Date的時間戳轉(zhuǎn)換為Date的標(biāo)準(zhǔn)形式。

Date函數(shù)使用語法 

date.方法名(參數(shù)1,參數(shù)2,...);
Date.方法名();
date代表一個日期對象的實例,Date代表日期對象,date.方法名調(diào)用的為對象的成員函數(shù)
Date.方法名調(diào)用的為對象的靜態(tài)函數(shù)

var?d=new?Date();var?d2=Date.UTC();

到此這篇關(guān)于JavaScript獲取時間戳的方法總結(jié)的文章就介紹到這了,更多相關(guān)JavaScript時間戳內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaScript 中級筆記 第三章

    JavaScript 中級筆記 第三章

    接著(2)來講。筆記(2)已經(jīng)講了引用和函數(shù)重載,接下來講解作用域。
    2009-09-09
  • 如何在JavaScript中實現(xiàn)私有屬性的寫類方式(一)

    如何在JavaScript中實現(xiàn)私有屬性的寫類方式(一)

    這篇文章主要介紹了如何在JavaScript中實現(xiàn)私有屬性的寫類方式。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • JavaScript實現(xiàn)ArrayBuffer到Base64的轉(zhuǎn)換

    JavaScript實現(xiàn)ArrayBuffer到Base64的轉(zhuǎn)換

    本文探討了在 JavaScript 中將 ArrayBuffer 轉(zhuǎn)換為 Base64 字符串時遇到的棧溢出問題,并提供了幾種實用的解決方案,我們將通過生動的比喻來解釋相關(guān)概念,比較不同方法的性能和兼容性,最終提供一個平衡而實用的方法,需要的朋友可以參考下
    2024-10-10
  • 小程序?qū)崿F(xiàn)點(diǎn)擊動畫效果

    小程序?qū)崿F(xiàn)點(diǎn)擊動畫效果

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)點(diǎn)擊動畫效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • input type=file 選擇圖片并且實現(xiàn)預(yù)覽效果的實例

    input type=file 選擇圖片并且實現(xiàn)預(yù)覽效果的實例

    下面小編就為大家?guī)硪黄猧nput type=file 選擇圖片并且實現(xiàn)預(yù)覽效果的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 詳解JavaScript進(jìn)度管理

    詳解JavaScript進(jìn)度管理

    這篇文章主要介紹了JavaScript進(jìn)度管理,對進(jìn)度管理感興趣的同學(xué),可以參考下
    2021-04-04
  • Javascript中的delete介紹

    Javascript中的delete介紹

    關(guān)于JavaScript中的Delete一直沒有弄的很清楚,最近看到兩篇這方面的文章,現(xiàn)對兩文中部分內(nèi)容進(jìn)行翻譯(內(nèi)容有修改和添加,順序不完全一致,有興趣推薦看原文),希望能對大家有所幫助
    2012-09-09
  • TypeScript環(huán)境搭建并且部署到VSCode的詳細(xì)步驟

    TypeScript環(huán)境搭建并且部署到VSCode的詳細(xì)步驟

    本文給大家介紹TypeScript環(huán)境搭建并且部署到VSCode的詳細(xì)步驟,本文分步驟給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-11-11
  • 前端終止請求的3種方式總結(jié)(ajax、axios)

    前端終止請求的3種方式總結(jié)(ajax、axios)

    這篇文章主要給大家總結(jié)介紹了關(guān)于前端終止請求的3種方式,其中包括ajax、axios的相關(guān)資料, 取消請求在前端有時候會用到,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • 學(xué)習(xí)JavaScript事件流和事件處理程序

    學(xué)習(xí)JavaScript事件流和事件處理程序

    這篇文章主要為大家介紹了學(xué)習(xí)JavaScript事件流和事件處理程序的注意事項,感興趣的小伙伴們可以參考一下
    2016-01-01

最新評論