首頁 >後端開發 >Golang >如何將 Go 的 UnixNano 時間戳記轉換為毫秒?

如何將 Go 的 UnixNano 時間戳記轉換為毫秒?

Susan Sarandon
Susan Sarandon原創
2024-12-09 21:22:17146瀏覽

How to Convert Go's UnixNano Timestamp to Milliseconds?

將Go 的UnixNano 轉換為毫秒

在Go 中, time.Now().UnixNano() 函數提供奈秒精度的時間戳。若要取得以毫秒為單位的時間戳,您可以執行必要的轉換。

對於Go v1.17 及更高版本:

從Go v1.17 開始,時間包包括UnixMicro() 和UnixMilli() 函數,進行轉換簡單明了:

timestamp := time.Now().UnixMilli()

對於Go v1.16及更早版本:

在Go v1.17 之前,您可以使用除法將奈秒時間戳轉換為毫秒:

func makeTimestamp() int64 {
    return time.Now().UnixNano() / 1e6
}

這裡,1e6 代表一個奈秒數毫秒。

以下是示範轉換的範例程式:

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := makeTimestamp()

    fmt.Printf("%d \n", timestamp)
}

func makeTimestamp() int64 {
    return time.Now().UnixNano() / 1e6
}

以上是如何將 Go 的 UnixNano 時間戳記轉換為毫秒?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn