【发布时间】:2019-05-30 16:26:09
【问题描述】:
我有这种json对象
[ {
"camera_name": "Bolands Mills Arup",
"exid": "bolands-mills-arup",
"latest_snapshot_date": "2019-05-30T07:06:55+01:00",
"oldest_snapshot_date": "2015-12-24T23:33:23+00:00",
"years": {
"2015": [
"12"
],
"2016": [
"04",
"08",
"09",
"10",
"02",
"06",
"03",
"11",
"12",
"01",
"07",
"05"
],
"2017": [
"04",
"07",
"10",
"09",
"11",
"01",
"02",
"03",
"05",
"06",
"08",
"11",
"12"
],
"2018": [
"03",
"05",
"06",
"10",
"11",
"01",
"02",
"08",
"09",
"04",
"07",
"11",
"12"
],
"2019": [
"01",
"02",
"03",
"04",
"05"
]
}
},
{
"camera_name": "Walls Demo",
"exid": "central-bank-fusion",
"latest_snapshot_date": "2019-05-30T07:07:02+01:00",
"oldest_snapshot_date": "2015-11-08T16:30:48+00:00",
"years": {
"2015": [
"12",
"11"
],
"2016": [
"02",
"03",
"05"
],
"2017": [
"03",
"08",
"10",
"02",
"04",
"05",
"06",
"07",
"09",
"11",
"01",
"11",
"12"
],
"2018": [
"03",
"04",
"07",
"09",
"01",
"02",
"08",
"10",
"11",
"05",
"06",
"11",
"12"
],
"2019": [
"01",
"02",
"03",
"04",
"05"
]
}
}
]
我有一个带有年份名称的参数,其值可以是 2015 年到 2019 年。我要做的是创建一个方法,该方法将用年份和月份值格式化这些数据。
我有这样的月份模式
let months_chars = {
"01":"jan",
"02":"feb",
"03":"mar",
"04":"apr",
"05":"may",
"06":"jun",
"07":"jul",
"08":"aug",
"09":"sep",
"10":"oct",
"11":"nov",
"12":"dec"
}
用户正在选择年份值,例如,如果用户选择 2016 年,则下方的数据将如下所示。
{
"camera_name": "Walls Demo",
"exid": "central-bank-fusion",
"latest_snapshot_date": "2019-05-30T07:07:02+01:00",
"oldest_snapshot_date": "2015-11-08T16:30:48+00:00",
"jan": 0,
"feb": 1,
"mar": 1,
"apr": 0,
"may", 1,
...
"dec": 0
}
如果存在月份,它将遍历年现值,然后添加月份字符并将 1 放在前面,如果没有,则仍然放置一个月并将 0 放在前面。
任何帮助将不胜感激,我已经做到了这一点,
let months_chars = {
"01":"jan",
"02":"feb",
"03":"mar",
"04":"apr",
"05":"may",
"06":"jun",
"07":"jul",
"08":"aug",
"09":"sep",
"10":"oct",
"11":"nov",
"12":"dec"
}
let year = this.year;
let formatedData =
data.map((camera) => {
let present_months = data["years"][`${year}`]
});
此外,我无法按要求格式化数据。
【问题讨论】:
-
我们如何知道用户选择年份时会选择哪个对象?因为这两个对象都包含一个 2016 年的对象,例如
-
它将格式化两个对象,而不仅仅是一个。如果用户选择 2016,两个对象都会发生同样的事情。
-
一年是一个选项,它将遍历所有对象一年。我只是把一个对象放在结果问题上。
标签: javascript