首页 > 解决方案 > 如何按月过滤数据并形成合适的数组?

问题描述

在客户端请求(日期范围)之后,我有来自服务器的集合。

例如,传入的数据,之后我形成数组的长度:

来自服务器的响应以集合的形式与date_call参数请求的日期范围相对应

例如:

要求的数据:2018/10/012018/10/12

如果date_call参数上的文档对应于请求的范围(例如 date_call = 2018/10 /01..12) - 以以下形式发送响应

{
    "_id" : ObjectId("5bbb299f06229dddbaab553b"),
    "phone" : "+38 (031) 231-23-21",
    "date_call" : "2018-10-08",
    "adress_delivery" : "1",
    "quantity_concrete" : "1",
    "state" : "200",
    "comments" : "1",
    "is_order" : "n",
    "date_delivery" : "",
    "quantity_orders" : "",
    "summ_order" : "",
    "profit" : "",
    "id" : "0"
}

可能有很多这样的集合。


在 data.labels 中,我有一个数组,其中包含所请求的月份的名称(我在数组中形成 - 月份)。

在 datasets.data 中将有 3 个数组 - DataCallsDataOrdersDataProfit

  1. DataCalls中,每月调用文件(date_call)的数量
  2. DataOrders - 每月订单数量(is_order)的数量
  3. DataProfit - 每月的利润(利润)金额

问题):

    {
        “月”:“四月”,
        “通话”:75,
        “订单”:“20”,
        “利润”:“1500”
    }

这是具有正确数据的屏幕截图理想结果

在此处输入图像描述

标签: javascriptarraysnode.jsjson

解决方案


JSON 绝对是这里的方法,但我建议您也将“year”属性添加到您的 JSON 对象,以便您可以在前端需要时执行日期计算。您可以更深入地发送实际交易并在前端进行计算。


推荐阅读