Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menukar masa Go.Now().UnixNano() kepada Milliseconds?

Bagaimana untuk Menukar masa Go.Now().UnixNano() kepada Milliseconds?

Susan Sarandon
Lepaskan: 2024-12-14 15:03:20
asal
958 orang telah melayarinya

How to Convert Go's time.Now().UnixNano() to Milliseconds?

Menukar masa Go.Now().UnixNano() kepada Milliseconds

Bahasa pengaturcaraan Go menyediakan beberapa fungsi berguna untuk mengendalikan masa, termasuk masa.Now(). UnixNano(), yang mengembalikan cap masa semasa dengan ketepatan nanosaat. Walau bagaimanapun, anda mungkin menghadapi situasi di mana anda hanya memerlukan ketepatan milisaat.

Penyelesaian untuk Go v1.17 dan Kemudian

Untuk Go versi 1.17 dan ke atas, pakej masa menawarkan dua fungsi baharu yang memudahkan perkara ini tugasan:

  • masa.Now().UnixMicro(): Mengembalikan cap masa dengan mikrosaat ketepatan (enam digit selepas titik perpuluhan).
  • masa.Now().UnixMilli(): Mengembalikan cap masa dengan ketepatan milisaat (tiga digit selepas titik perpuluhan).

Untuk mendapatkan cap masa milisaat, hanya gunakan kaedah UnixMilli():

timeMs := time.Now().UnixMilli()
Salin selepas log masuk

Solution for Go v1.16 dan Terdahulu

Untuk Go versi 1.16 dan lebih awal, anda boleh mencapai penukaran yang diingini secara manual. Memandangkan satu milisaat bersamaan dengan 1,000,000 nanosaat, anda boleh membahagikan cap masa nanosaat dengan 1,000,000:

timeMs := time.Now().UnixNano() / 1e6
Salin selepas log masuk

Ini akan memberi anda cap masa milisaat dengan tiga digit selepas titik perpuluhan.

Contoh 🎜>

Untuk menunjukkan penggunaan ini pendekatan, berikut ialah contoh yang boleh anda jalankan:

package main

import (
    "fmt"
    "time"
)

func main() {
    nanoTime := time.Now().UnixNano()
    microTime := time.Now().UnixMicro()
    milliTime := time.Now().UnixMilli()

    fmt.Println("Nano time:", nanoTime)
    fmt.Println("Micro time:", microTime)
    fmt.Println("Milli time:", milliTime)
}
Salin selepas log masuk
Menjalankan kod ini akan mengeluarkan cap masa masing-masing dengan ketepatan nanosaat, mikrosaat dan milisaat.

Atas ialah kandungan terperinci Bagaimana untuk Menukar masa Go.Now().UnixNano() kepada Milliseconds?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan