Javascript 将特定数组值合并为单个值
我已经解析了一个csv文件,它为我提供了如下数组:Javascript 将特定数组值合并为单个值,javascript,arrays,csv,Javascript,Arrays,Csv,我已经解析了一个csv文件,它为我提供了如下数组: [{ "year": 2019, "month": 6, "day": 25, "hour": 4, "minute": 0, "temperature": 26.52 }, { "year": 2019, "month": 6, "day": 25, "hour": 4, "minute": 0, "temperature": 26.52 }] "time": "2019-07-02 09:57:35" 我想将分钟、小时、天、月、年合并为
[{
"year": 2019,
"month": 6,
"day": 25,
"hour": 4,
"minute": 0,
"temperature": 26.52
},
{
"year": 2019,
"month": 6,
"day": 25,
"hour": 4,
"minute": 0,
"temperature": 26.52
}]
"time": "2019-07-02 09:57:35"
我想将分钟、小时、天、月、年合并为一个键。像这样:
[{
"year": 2019,
"month": 6,
"day": 25,
"hour": 4,
"minute": 0,
"temperature": 26.52
},
{
"year": 2019,
"month": 6,
"day": 25,
"hour": 4,
"minute": 0,
"temperature": 26.52
}]
"time": "2019-07-02 09:57:35"
因此,我可以将其用作API上的datetime对象
我目前获取数据的方式是:
const cleanKeys = [
'year',
'month',
'day',
'hour',
'minute',
'temperature',
];
const dataAsObject = totalData.map(function (values) {
return cleanKeys.reduce(function (o, k, i) {
o[k] = values[i];
return o;
}, {})
});
这基本上是向所有数据添加一个标题键。我只对合并分钟、小时、天、月、年列感兴趣 我建议您使用内置: var obj={年份:2019年, 月份:6, 日期:25, 时间:4,, 分钟:0,, 温度:26.52}; const date=新日期obj.year,obj.month-1,obj.day,obj.hour,obj.minute; const newObj={date,temperature:obj.temperature};
console.logJSON.stringifynewObj 您可以自己创建字符串,例如:
yourArray["time"] = `${yourArray.year}-${yourArray.month}-${yourArray.day} ${yourArray.hours}:${yourArray.minutes}:${yourArray.seconds}`;
好的…是什么阻止你只做年+-+月,等等?那不是一个数组-我们在JavaScription中称它们为对象。有什么方法可以在循环内部做到这一点吗?我如何在循环内部做到这一点?如果您仔细观察我是如何获得数据的,您可能会理解NICE,但我可以在reduce方法中使用此方法吗?