如何根據 JavaScript 中的最小和最大日期對陣列進行排序?
假設我們有一個字串日期陣列,如下所示:
const arr = [ "2017-01-22 00:21:17.0", "2017-01-27 11:30:23.0", "2017-01-24 15:53:21.0", "2017-01-27 11:34:18.0", "2017-01-26 16:55:48.0", "2017-01-22 11:57:12.0", "2017-01-27 11:35:43.0" ];
我們需要編寫一個 JavaScript 函式,該函式採用這樣的陣列。函式應從此陣列中找到最舊和最新的日期。
然後,函式最後應返回包含這兩個日期的物件。
示例
const arr = [ "2017-01-22 00:21:17.0", "2017-01-27 11:30:23.0", "2017-01-24 15:53:21.0", "2017-01-27 11:34:18.0", "2017-01-26 16:55:48.0", "2017-01-22 11:57:12.0", "2017-01-27 11:35:43.0" ]; const findMinMaxDate = (arr = []) => { const res = arr.reduce((acc, val, ind) => { if (!ind) { return { min: val, max: val}; }; if (val < acc.min) { acc.min = val; }; if (val > acc.max) { acc.max = val; }; return acc; }, undefined); return res; }; console.log(findMinMaxDate(arr));
輸出
在控制檯中的輸出將是:
{ min: '2017-01-22 00:21:17.0', max: '2017-01-27 11:35:43.0' }
廣告