我有5年的每日数据,我想用JavaScript / ES6汇总到每个月的最后一天,但我看不出我会怎么做。
有没有人有理论或方法这样做?我过去没有做过这么多繁重的数据操作,所以我甚至不确定如何处理这个问题,更不用说最好的方法了。
非常感谢任何帮助。
我想要达到的目标(每个月的最后一天):
[
{
x: ‘2018-03-31’,
y: 27
},
{
x: ‘2018-02-28,
y: 32
},
{
x: ‘2018-01-30,
y: 27
},
{
x: ‘2017-12-31’,
y: 27
},
{
x: ‘2017-11-30,
y: 32
},
{
x: ‘2017-10-31,
y: 27
}
]
目前的数据格式:
[
{
x: ‘2018-03-31’,
y: 27
},
{
x: ‘2018-03-30',
y: 32
}
{
x: ‘2018-03-29’,
y: 27
},
{
x: ‘2018-03-28',
y: 32
}
]
每天持续五年。
答案 0 :(得分:0)
filter
的下一个日期为1,请尝试input
x
const input = [
{
x: "2018-03-31",
y: 27
},
{
x: "2018-03-30",
y: 32
},
{
x: "2018-03-01",
y: 27
},
{
x: "2018-02-28",
y: 32
},
{
x: "2018-02-27",
y: 27
},
{
x: "2018-02-01",
y: 32
},
{
x: "2018-01-31",
y: 27
},
{
x: "2018-01-30",
y: 27
}
];
let output = input.filter(
date =>
new Date(
new Date(date.x.split("-").join(",")).getTime() + 24 * 60 * 60 * 1000
).getDate() === 1
);
console.log(output);