@hifProg
Как на основе одного массива объектов заменить или отсортировать строки у другого массива?
Есть массив объектов arrObj отсортированный по parentId и form.order и есть массив строк arrStr.
Есть массив объектов arrObj отсортированный по parentId и form.order и есть массив строк arrStr.
const arrObj = [
{
form: {
id: 3,
order: 0,
isReg: true
},
parentId: 19
},
{
form: {
id: 1,
order: 1,
isReg: true
},
parentId: 19
},
{
form: {
id: 5,
order: 7,
isReg: false
},
parentId: 19
}
{
form: {
id: 5,
order: 1,
isReg: true
},
parentId: 22
},
{
form: {
id: 2,
order: 2,
isReg: true
},
parentId: 22
},
{
form: {
id: 3,
order: 0,
isReg: true
},
parentId: 25
},
{
form: {
id: 1,
order: 1,
isReg: true
},
parentId: 25
},
]
const arrStr = [
"155",
"122",
"1222",
"1225",
"119",
"1191",
"1195",
"1193",
"125",
"1253",
"1251",
]
Расшифровка строки в массиве «1222»
1 — какое то число, 22 — номер родителя (совпадает с parentId в массиве arrObj), 2 — id дочернего элемента (совпадает с id в form в массиве arrObj)
Массив arrObj отсортирован нужным образом на основе parentId и form.order где и должна соблюдаться последовательность id в массиве arrStr в соответствии с order (от меньшего к большему) в массиве arrObj , т.е массив arrStr должен выглядеть так
const arrStr = [
"155", // бывают 2-х уровневые их трогать не надо
"122", // группа начинается с номера родителя трогать не надо
"1225", // order 1 в массиве arrObj
"1222", // order 2 в массиве arrObj
"119,
"1193", // order 0 в массиве arrObj
"1191", // order 1 в массиве arrObj
"1195", // order 7 в массиве arrObj
"125",
"1253",
"1251",
]
Решения вопроса 0
Ответы на вопрос 0