javascript 如何从一个巨大的数组中得到一系列的日期字符串?

jv4diomz  于 2022-12-17  发布在  Java
关注(0)|答案(1)|浏览(133)

下面是一个特定时间格式的日期数组。我希望能够创建一个包含“2017-01”的所有日期的新数组(从2017年1月开始的所有日期)

const datesArray = [
  "2017-01-01",
  "2017-01-02",
  "2017-01-03",
  "2017-01-04",
  "2017-01-05",
  "2017-01-06",
  "2017-01-07",
  "2017-01-08",
  "2017-01-09",
  "2017-01-10",
  "2017-01-11",
  "2017-01-12",
  "2017-01-13",
  "2017-01-14",
  "2017-01-15",
  "2017-01-16",
  "2017-01-17",
  "2017-01-18",
  "2017-01-19",
  "2017-01-20",
  "2017-01-21",
  "2017-01-22",
  "2017-01-23",
  "2017-01-24",
  "2017-01-25",
  "2017-01-26",
  "2017-01-27",
  "2017-01-28",
  "2017-01-29",
  "2017-01-30",
  "2017-01-31",
  "2017-02-01",
  "2017-02-02",
  "2017-02-03",
  "2017-02-04",
  "2017-02-05",
  "2017-02-06",
  "2017-02-07",
  "2017-02-08",
  "2017-02-09",
  "2017-02-10",
  "2017-02-11",
  "2017-02-12",
  "2017-02-13",
...
];

我已经尝试过使用regex,但需要进一步澄清!

mjqavswn

mjqavswn1#

您可以使用Array.filterString.slice来获取要比较的前7个字母。
例如

const datesArray = [
  "2017-01-01",
  "2017-01-02",
  "2017-01-03",
  "2017-01-04",
  "2017-01-05",
  "2017-01-06",
  "2017-01-07",
  "2017-01-08",
  "2017-01-09",
  "2017-01-10",
  "2017-01-11",
  "2017-01-12",
  "2017-01-13",
  "2017-01-14",
  "2017-01-15",
  "2017-01-16",
  "2017-01-17",
  "2017-01-18",
  "2017-01-19",
  "2017-01-20",
  "2017-01-21",
  "2017-01-22",
  "2017-01-23",
  "2017-01-24",
  "2017-01-25",
  "2017-01-26",
  "2017-01-27",
  "2017-01-28",
  "2017-01-29",
  "2017-01-30",
  "2017-01-31",
  "2017-02-01",
  "2017-02-02",
  "2017-02-03",
  "2017-02-04",
  "2017-02-05",
  "2017-02-06",
  "2017-02-07",
  "2017-02-08",
  "2017-02-09",
  "2017-02-10",
  "2017-02-11",
  "2017-02-12",
  "2017-02-13"
];

const f = datesArray.filter(dt => dt.slice(0, 7) === '2017-01');

console.log(f);

相关问题