gpt4 book ai didi

javascript - 将两个 JavaScript 对象中的数据组合到一个新对象中

转载 作者:行者123 更新时间:2023-11-28 06:00:07 25 4
gpt4 key购买 nike

我有一个 JavaScript 对象,格式如下:

{
'date' : {"12.12.2014","12.12.2014","12.12.2014","13.12.2014","13.12.2014","14.12.2014"}
'product' : {"apple","banana","apple","strawberry","apple","banana"}
}

该对象必须按以下格式分割和计算:

var apple = {
'date': {"12.12.2014","13.12.2014","14.12.2014"}
'product': {2,1,0}
}

var banana = {
'date': {"12.12.2014","13.12.2014","14.12.2014"}
'product': {1,0,1}
}

var strawberry = {
'date' : {"12.12.2014","13.12.2014","14.12.2014"}
'product': {0,1,0}
}

也许你可以提供一个解决方案。

最佳答案

通过适当的数据结构和一些帮助器 datedateObj,您首先可以获得所有日期,其次获得作为日期哈希表的对象,第三获得分组结果。

var object = { 'date': ["12.12.2014", "12.12.2014", "12.12.2014", "13.12.2014", "13.12.2014", "14.12.2014"], 'product': ["apple", "banana", "apple", "strawberry", "apple", "banana"] },
date = object.date.filter(function (d) {
if (!this[d]) {
this[d] = true;
return true;
}
}, Object.create(null)),
dateObj = {},
grouped = {};

date.forEach(function (d, i) {
dateObj[d] = i;
});

object.product.forEach(function (p, i) {
grouped[p] = grouped[p] || {
date: date,
product: date.map(function (d) { return 0; })
};
grouped[p].product[dateObj[object.date[i]]]++;
});

console.log(grouped);

关于javascript - 将两个 JavaScript 对象中的数据组合到一个新对象中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37349466/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com