Go プログラミング言語には、time.Now() など、時間を処理するための便利な関数がいくつか用意されています。 UnixNano() は、ナノ秒の精度で現在のタイムスタンプを返します。ただし、ミリ秒の精度のみが必要な状況に遭遇する可能性があります。
Go バージョン 1.17 以降の場合、time パッケージはこれを簡素化する 2 つの新しい関数を提供します。 task:
Toミリ秒のタイムスタンプを取得するには、単に UnixMilli() を使用します。メソッド:
timeMs := time.Now().UnixMilli()
Go バージョン 1.16 以前の場合、目的の変換を手動で実現できます。ミリ秒は 1,000,000 ナノ秒に相当するため、ナノ秒のタイムスタンプを 1,000,000 で割ることができます。
timeMs := time.Now().UnixNano() / 1e6
これにより、小数点以下 3 桁のミリ秒のタイムスタンプが得られます。
これらのアプローチの使用法を示すために、実行できる例は次のとおりです。
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) }
このコードを実行すると、それぞれナノ秒、マイクロ秒、ミリ秒の精度でタイムスタンプが出力されます。
以上がGo の time.Now().UnixNano() をミリ秒に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。