powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Изменить структуру JSON обьекта
3 сообщений из 3, страница 1 из 1
Изменить структуру JSON обьекта
    #39185271
drummer84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть JSON вида:
Код: javascript
1.
2.
	 [{"Name":"Ivanov","Otdel":"72000"},{"Name":"Petrov","Otdel":"72000"},{"Name":"kuznetsov","Otdel":"72100"},{"Name":"Putin","Otdel":"72110"},
		{"Name":"Pushkin","Otdel":"31000"},{"Name":"Ivanov2","Otdel":"31300"},{"Name":"Sidorov","Otdel":"72110"},{"Name":"Kozlov","Otdel":"72110"}]


Нужно переделать в вида:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
[{"Name":null,"Otdel":"72000","id":1,"parrentId":null},
  {"Name":"Ivanov","Otdel":"72000","id":2,"parrentId":1},
  {"Name":"Petrov","Otdel":"72000","id":3,"parrentId":1},
    {"Name":null,"Otdel":"72100","id":4,"parrentId":1},
    {"Name":"kuznetsov","Otdel":"72100","id":5,"parrentId":4},
      {"Name":null,"Otdel":"72110","id":10,"parrentId":4},
      {"Name":"Putin","Otdel":"72110","id":6,"parrentId":10},
      {"Name":"Sidorov","Otdel":"72110","id":11,"parrentId":10},
      {"Name":"Kozlov","Otdel":"72110","id":12,"parrentId":10}
{"Name":null,"Otdel":"31000","id":7,"parrentId":null},
  {"Name":"Pushkin","Otdel":"31000","id":8,"parrentId":7},
    {"Name":"Ivanov2","Otdel":"31300","id":9,"parrentId":7}
]



Связь по полю Otdel, чем меньше внесено первых числе тем главнее. т.е. 72000 >72100>72110.
Для каждой группы сотрудников нужно создать родительскую запись.
Подскажите, как решить задачку ?
...
Рейтинг: 0 / 0
Изменить структуру JSON обьекта
    #39185498
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
drummer84,
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
function transform(a){
  a.sort(function(a,b){return +a.Otdel > +b.Otdel ? 1 : -1});

  for (var i = j = 0, len = a.length, otdel = parentId = null; i < len; i++) {
    if (otdel !== a[i].Otdel){
      otdel = a[i].Otdel;
      a.splice(i, 0, {"Name": null, "Otdel": otdel, "id": ++j,"parrentId": parentId});
      parentId = j;
      i++; 
      len++;
    }
    
    a[i].id = ++j; 
    a[i].parentId = parentId;
  }
  
  return a;
}
...
Рейтинг: 0 / 0
Изменить структуру JSON обьекта
    #39185633
drummer84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скукотища,
Огромное человеческое спасибо!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Изменить структуру JSON обьекта
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]