0
夥計們,您可以幫助完成對象的自定義。我想索引正確的對象,但對象的當前輸出是索引是商店的ID。javascript中的自定義多維對象
樣本對象
var stocks = [
{
"size": "2",
"count": 5,
"store": {
"id": 3,
"title": "Belconnen"
}
},
{
"size": "3",
"count": 4,
"store": {
"id": 4,
"title": "Canberra"
}
},
{
"size": "4",
"count": 4,
"store": {
"id": 5,
"title": "Bankstown"
}
},
{
"size": "5",
"count": 5,
"store": {
"id": 4,
"title": "Canberra"
}
}];
電流輸出
{
0: {
"sizes": {
2: 3,
3: 0,
4: 0,
5: 0
}
}
},
{
1: {
"sizes": {
2: 0,
3: 3,
4: 0,
5: 0
}
}
},
{
2: {
"sizes": {
2: 0,
3: 0,
4: 3,
5: 0
}
}
},
{
3: {
"sizes": {
2: 0,
3: 0,
4: 0,
5: 3
}
}
}
我當前的代碼
var result = function (data) {
var stores = {},
sizes = Object.create(null),
i = 0;
data.forEach(function (item) {
var index = i;
if (!stores[index]) {
stores[index] = { sizes: {} };
Object.keys(sizes).forEach(function (key) {
stores[index].sizes[key] = 0;
});
}
if (!sizes[item.size]) {
Object.keys(stores).forEach(function (key) {
stores[key].sizes[item.size] = 0;
sizes[item.size] = true;
});
}
stores[index].sizes[item.size] = item.count;
i++;
});
return stores;
}(stocks);
console.log(result);
我的期望輸出
{
0: {
"sizes": {
2: 3,
3: 0,
4: 0,
5: 0
}
}
},
{
1: {
"sizes": {
2: 0,
3: 3,
4: 0,
5: 3
}
}
},
{
2: {
"sizes": {
2: 0,
3: 0,
4: 3,
5: 0
}
}
}
在此先感謝。
*「我想索引對象正確」*是什麼意思?你的邏輯是什麼? – RomanPerekhrest
如果我把你在小提琴中提供的代碼給了我預期的輸出。 [Object Reorganize](https://jsfiddle.net/qsxzrmt2/1/)。你能給我關於你的JavaScript文件的更多信息嗎?你如何通過股票對象? –
你能否請求提供關於你試圖實現的邏輯的更多信息?外部物體的標誌是什麼?大小對象中鍵的值應該是多少?如何映射在一起?我的輸出也得到了不同的結果。在你列出的輸出和你的預期輸出中,你總是有3個,但看起來應該是5,4,4,5? –