Задать вопрос

Как осуществить редактирование или добавление элемента в многомерный ассоциативный массив?

В общем суть проблемы заключается в следующем. У меня есть массив следующего содержания.
{
  "name": "files",
  "type": "folder",
  "path": "files",
  "lastMod": "10.11.2014",
  "items": [{
              "name": "Новая папка",
              "type": "folder",
              "path": "files\/Новая папка",
              "lastMod": "10.11.2014",
              "items": [{
                          "name": "87",
                          "type": "folder",
                          "path": "files\/Новая папка\/87",
                          "lastMod": "10.11.2014",
                          "items": [{
                                      "name": "872323",
                                      "type": "folder",
                                      "path": "files\/Новая папка\/87",
                                      "lastMod": "10.11.2014",
                                      "items": []
                                    }, {
                                      "name": "lola.txt",
                                      "type": "txt",
                                      "path": "files\/Новая папка\/87\/lola.txt",
                                      "lastMod": "10.11.2014",
                                      "content":"Hi i am Josh!"
                                    }]

                        },
                        {
                          "name": "87w",
                          "type": "folder",
                          "path": "files\/Новая папка\/87w",
                          "lastMod": "10.11.2014",
                          "items": [{
                                      "name": "872323",
                                      "type": "folder",
                                      "path": "files\/Новая папка\/87",
                                      "lastMod": "10.11.2014",
                                      "items": []
                                    }, {
                                      "name": "lola.txt",
                                      "type": "txt",
                                      "path": "files\/Новая папка\/87\/lola.txt",
                                      "lastMod": "10.11.2014",
                                      "content":"Hi i am Josh!"
                                    }]

                        },{
                          "name": "lola.wma",
                          "type": "wma",
                          "path": "files\/Новая папка\/lola.wma",
                          "lastMod": "10.11.2014"
                        }]
            }, {
              "name": "place your file here.txt",
              "type": "txt",
              "path": "files\/place your file here.txt",
              "lastMod": "10.11.2014",
              "content":"Hi i am Josh!"
            }, {
              "name": "data.json",
              "type": "json",
              "path": "files\/data.json",
              "lastMod": "10.11.2014"
            }]
}


Как можно организовать на js удаление и добавление элементов в его дочерние структуры?
  • Вопрос задан
  • 2414 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@asdz
Сложно понять вашу структуру данных если не обрамлена в code.
Как бы сделал я: сделал бы дерево. В узлах - свойства, если свойство объект - то узел раскрывается и так далее. Вам только нужно сделать редактирование названий узлов, изменение значений в узлах, добавление/ удаление узлов.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@GreatRash
Это обыкновенный JSON. Например добавляем новый итем:

var data = { /* ваши данные */ };

var newItem = {
  "name": "Ещё одна папка",
  "type": "folder",
  "path": "folders\/Ещё одна папка",
  "lastMod": "10.12.2014",
  "items": [ /* массив файлов внутри папки */ ]
};

/* добавляем в массив папок ещё одну */
data.items.push(newItem);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽