我正在嘗試使用 chart.js 庫制作折線圖。我有一個包含 ISO 日期的陣列。我正在嘗試檢查誰使 ISO 日期屬于同一時間和同一天。然后,我將使用這些資訊使用 chart.js 庫創建折線圖。
例如,我有這個 ISO 日期陣列:
[
{ date: '2022-06-10T07:32:07.744Z' },
{ date: '2022-06-10T08:32:38.490Z' },
{ date: '2022-06-10T07:32:58.720Z' },
{ date: '2022-06-10T07:33:25.121Z' },
{ date: '2022-06-10T07:35:18.556Z' },
{ date: '2022-06-10T07:35:56.459Z' },
{ date: '2022-06-10T07:36:38.736Z' },
{ date: '2022-06-10T07:36:38.736Z' }
]
我想知道這個陣列中哪些 ISO 日期屬于同一小時和同一天。
我正在嘗試制作這樣的折線圖 - https://imgur.com/KuLqlD5。
uj5u.com熱心網友回復:
您可以使用一些正則運算式來獲取日期和小時部分,然后對其進行排序。
const dates = [
{ date: '2022-06-10T07:32:07.744Z' },
{ date: '2022-06-10T08:32:38.490Z' },
{ date: '2022-06-10T07:32:58.720Z' },
{ date: '2022-06-10T07:33:25.121Z' },
{ date: '2022-06-10T07:35:18.556Z' },
{ date: '2022-06-10T07:35:56.459Z' },
{ date: '2022-06-10T07:36:38.736Z' },
{ date: '2022-06-10T07:36:38.736Z' }
]
// Regex to get day and hour
const hourAndDay = new RegExp('(\\d{1,2}T\\d{1,2})');
// Get unique day-hour pairs
const d = dates.map(y => hourAndDay.exec(y.date)[0])
const uniques = dates.filter((x, i) => d.indexOf(hourAndDay.exec(x.date)[0]) === i)
// Result object
const result = {};
uniques.forEach(x => result[hourAndDay.exec(x.date)[0]] = [])
// Sort based on hour and day
dates.forEach((x) => {
const parsed = hourAndDay.exec(x.date)[0];
result[parsed].push(parsed.split("T").map(Number))
})
console.log(result)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/489925.html
標籤:javascript 节点.js 异酸盐
