Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于日期处理的Javascript JSON数据_Javascript_Arrays_Json_Jsonobject - Fatal编程技术网

基于日期处理的Javascript JSON数据

基于日期处理的Javascript JSON数据,javascript,arrays,json,jsonobject,Javascript,Arrays,Json,Jsonobject,我已经给出了以下数组。我的问题是如何根据日期处理数据。 例如:从服务获取低于响应 [[ {"claimNumber":"6396","itemNumber":"1","dateAssessed":"20/10/2015"}, {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"}, {"claimNumber":"918","itemNumber":"1","dateAssessed":"12/09/20

我已经给出了以下数组。我的问题是如何根据日期处理数据。 例如:从服务获取低于响应

[[
  {"claimNumber":"6396","itemNumber":"1","dateAssessed":"20/10/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"918","itemNumber":"1","dateAssessed":"12/09/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2206","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2205","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
]]
我希望根据日期处理数据,如下所示:

2015年9月20日

  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2206","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2205","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"}
2015年10月20日

   {"claimNumber":"6396","itemNumber":"1","dateAssessed":"20/10/2015"}
2015年9月12日

  {"claimNumber":"918","itemNumber":"1","dateAssessed":"12/09/2015"}

非常感谢advanced。

我会这样想:

  • 按日期对数据进行排序
  • 创建新的空对象newData
  • 遍历数据数组,
    • 数据=数据[i]。日期
    • 检查newData[data]是否存在:如果不存在,则使用值中的空数组创建它
    • 将数据[i]添加到新数据[data]

我没有提到类型转换等。

您可以使用
.filter

function reduceArr(x, date){
    return x[0].filter(function(elem){
        return elem.dateAssessed==date;
    });
}

console.log(reduceArr(x, "20/09/2015"));
这将返回所需对象的数组


不清楚您的问题,但如果您想按日期分组,则:

var arr=[
  {"claimNumber":"6396","itemNumber":"1","dateAssessed":"20/10/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"918","itemNumber":"1","dateAssessed":"12/09/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2206","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2205","itemNumber":"1","dateAssessed":"20/09/2015"},
  {"claimNumber":"2208","itemNumber":"1","dateAssessed":"20/09/2015"},
];
var newarr = {};
for(var i=0; i<arr.length;i++){
    newarr[arr[i].dateAssessed] = newarr[arr[i].dateAssessed] || [];
    newarr[arr[i].dateAssessed].push(arr[i]);
}
var-arr=[
{“索赔编号”:“6396”,“项目编号”:“1”,“评估日期”:“20/10/2015”},
{“索赔编号”:“2208”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“918”,“项目编号”:“1”,“评估日期”:“12/09/2015”},
{“索赔编号”:“2208”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“2206”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“2205”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“2208”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
];
var newarr={};

对于(var i=0;i,为其制作一些排列函数。 arrange()返回对象中的分组数据

var数据=[[
{“索赔编号”:“6396”,“项目编号”:“1”,“评估日期”:“20/10/2015”},
{“索赔编号”:“2208”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“918”,“项目编号”:“1”,“评估日期”:“12/09/2015”},
{“索赔编号”:“2208”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“2206”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“2205”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
{“索赔编号”:“2208”,“项目编号”:“1”,“评估日期”:“20/09/2015”},
]];
函数排列(数据){
var res={};
对于(变量i=0,obj;obj=data[i];i++){
如果(!res[obj.dateAssessed]){
res[obj.dateAssessed]=[];
}
res[obj.date].push(obj);
}
返回res;
}
/*它返回的结果如下:
{
12/09/2015: [{ ... }],
20/09/2015: [{ ... }],
20/10/2015: [{ ... }]
}
*/

排列(数据[0]);
@Reeno这真的是一个新问题吗?