我有如下時間字串:
2022-06-20T19:00:00.1620000Z
我嘗試下面的代碼將其轉換為 datetime 物件,但它回傳 null
var t1 = d3.timeParse("%Y-%m-%d %H:%M:%S.%LZ")("2022-06-20T19:00:00.1620000Z")
console.log("debug:",t1)
<script src="https://d3js.org/d3.v7.min.js"></script>
uj5u.com熱心網友回復:
首先,注意T白天和小時之間。
這里的問題是您正在使用%L,它接受毫秒(從000到999),而您應該使用%f微秒。但即使你使用%f你也有一個問題:你的字串有七位小數表示秒,并且%f只接受六位。因此,您必須使用您喜歡的任何方法修剪該字串。
例如(查看瀏覽器的控制臺,而不是代碼段控制臺):
let t = "2022-06-20T19:00:00.1620000Z";
t = t.slice(0, -2) t.slice(-1);
const t1 = d3.timeParse("%Y-%m-%dT%H:%M:%S.%fZ")(t)
console.log("debug:",t1)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/7.4.0/d3.min.js"></script>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/495405.html
