【发布时间】:2019-01-02 05:39:12
【问题描述】:
我的 JSON 数组中有完整的日期,但根据我的需要,我只想要日期而不是月份和年份,就像完整日期是 2018-12-01 我只想拥有 01。
因为这是对我的要求,我不知道如何连接它
const raw = [
[
"JAYANAGAR",
"2018-09-01",
"476426"
],
[
"MALLESHWARAM",
"2018-09-01",
"92141"
],
[
"KOLAR",
"2018-09-01",
"115313"
],
[
"JAYANAGAR",
"2018-09-02",
"511153"
],
[
"MALLESHWARAM",
"2018-09-02",
"115704"
],
[
"KOLAR",
"2018-09-02",
"83597"
],
[
"JAYANAGAR",
"2018-09-03",
"167421"
],
[
"KOLAR",
"2018-09-03",
"53775"
]
]
let types = new Set();
const rawObj = raw.reduce((memo, [type, date, value]) => {
date = date.split('-').reverse().join('-');
memo[date] = memo[date] || {};
memo[date][type] = parseInt(value);
types.add(type);
return memo;
}, {});
types = [...types];
const data = Object.entries(rawObj).reduce((memo, [date, value]) => {
memo.push([date, ...types.map(type => value[type] || 0)]);
return memo;
}, [
['Billdate', ...types.map(type => `${type[0]}${type.substr(1).toLowerCase()}`)]
]);
console.log(data)
在我的代码中,我正在格式化我的 JSON 数据,因为我现在只想要日期而不是月份和年份。
这里的任何人请指导我或建议我如何实现这一目标
【问题讨论】:
-
你试过
new Date(date).getDay(); -
请尝试用最少的代码提问。
-
即使
date.slice(-2)也会得到你想要的数据
标签: javascript json