基于日期处理的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这真的是一个新问题吗?