Как построить объект или массив с уникальными именами ключей из уникальных значений объекта массива со всеми элементами Javascript

Форум по Javascript
Ответить
Anonymous
 Как построить объект или массив с уникальными именами ключей из уникальных значений объекта массива со всеми элементами

Сообщение Anonymous »

Я хотел бы произвести массив ( плюс, отдельно, объект, если возможно, ) из уникальных значений 'custref' в следующем массиве:

Код: Выделить всё

[
{
"id": 1233,
"custRef": "ABC1234",
"somethingElse": 10.0,
"someRef": "37856394943222"
},
{
"id": 1234,
"custRef": "ABC1235",
"somethingElse": 11.0,
"someRef": "37856394943222"
},
{
"id": 1235,
"custRef": "ABC1235",
"somethingElse": 13.0,
"someRef": "3498537945734567"
}
]
< /code>
Предпочтительные результаты: < /p>
Я хотел бы произвести этот массив: < /p>
[
{
"custRef": "ABC1234",
"items": [
{
"id": 1233,
"custRef": "ABC1234",
"somethingElse": 10.0,
"someRef": "37856394943222"
}
]
},
{
"custRef": "ABC1235",
"items": [
{
"id": 1234,
"custRef": "ABC1235",
"somethingElse": 11.0,
"someRef": "37856394943222"
},
{
"id": 1235,
"custRef": "ABC1235",
"somethingElse": 13.0,
"someRef": "3498537945734567"
}
]
}
]
... и, кроме того, , если возможно, , этот объект:

Код: Выделить всё

{
"ABC1234": [
{
"id": 1233,
"custRef": "ABC1234",
"somethingElse": 10.0,
"someRef": "37856394943222"
}
],
"ABC1235": [
{
"id": 1234,
"custRef": "ABC1235",
"somethingElse": 11.0,
"someRef": "37856394943222"
},
{
"id": 1235,
"custRef": "ABC1235",
"somethingElse": 13.0,
"someRef": "3498537945734567"
}
]
}
Я предполагаю, что это была бы какая -то комбинация .filter () и .map ( или, может быть. Reduce () ), но я на самом деле не знаю, что я делаю, и поэтому я не знаю, что я должен искать.

Код: Выделить всё

orderItems
'Мне удалось создать простой массив уникального' 'Значения, с приведенным JavaScript. Тем не менее, я не могу найти способ использовать это эффективно ... или зная, должен ли я его использовать вообще?var uniqueOrdersWtItms = Object.keys(orderItems.reduce((r,{oh_cust_order_ref}) => (r[oh_cust_order_ref]='', r) , {}));
< /code>
Как я говорю, я не могу подчеркнуть это достаточно, я не знаю, что мне нужно искать, поэтому, хотя я пытался построить это через любое количество результатов поиска здесь, так и в других местах ... трудно узнать, о чем просить. Если кто -то может помочь, это было бы потрясающе. : (


Подробнее здесь: https://stackoverflow.com/questions/795 ... y-object-v
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»