首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Javascript中,将ISO 8601日期的排序数组拆分为每天的新2d数组

在Javascript中,可以使用以下步骤将ISO 8601日期的排序数组拆分为每天的新2D数组:

  1. 首先,将排序的ISO 8601日期数组作为输入。
  2. 创建一个空数组来存储每天的新2D数组。
  3. 创建一个临时数组来存储当前日期的数据。
  4. 遍历排序的日期数组,对于每个日期:
  5. a. 解析ISO 8601日期字符串为日期对象。
  6. b. 检查临时数组是否为空或当前日期与临时数组中最后一个日期是否相同。如果是,则将当前日期的数据添加到临时数组。
  7. c. 如果当前日期与临时数组中最后一个日期不同,则将临时数组添加到每天的新2D数组中,并创建一个新的临时数组来存储当前日期的数据。
  8. 循环结束后,将最后一个临时数组添加到每天的新2D数组中。
  9. 返回每天的新2D数组作为结果。

下面是一个示例代码:

代码语言:txt
复制
function splitArrayByDay(sortedArray) {
  let dailyArray = []; // 存储每天的新2D数组
  let tempArray = []; // 临时数组存储当前日期的数据

  for (let i = 0; i < sortedArray.length; i++) {
    let currentDate = new Date(sortedArray[i]); // 解析ISO 8601日期字符串为日期对象

    if (tempArray.length === 0 || currentDate.toDateString() === new Date(tempArray[tempArray.length - 1][0]).toDateString()) {
      tempArray.push(sortedArray[i]);
    } else {
      dailyArray.push(tempArray);
      tempArray = [sortedArray[i]];
    }
  }

  dailyArray.push(tempArray); // 将最后一个临时数组添加到每天的新2D数组中
  return dailyArray;
}

// 示例用法
let sortedDates = [
  "2022-01-01T09:00:00Z",
  "2022-01-01T12:00:00Z",
  "2022-01-02T10:00:00Z",
  "2022-01-02T15:00:00Z",
  "2022-01-03T11:00:00Z"
];

let result = splitArrayByDay(sortedDates);
console.log(result);

在以上示例中,splitArrayByDay函数接受一个排序的ISO 8601日期数组,并返回每天的新2D数组。它将日期字符串解析为日期对象,并根据日期的相等性将它们分组为每天的数据。最后,它返回一个包含每天的新2D数组的结果。

对于这个问题,我无法直接提供腾讯云的相关产品和产品介绍链接地址,因为这个问题与云计算品牌商无关。但是,腾讯云提供了一系列与云计算相关的产品和服务,你可以在腾讯云的官方网站上找到更多详细信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券