Javascript БОЛЬШОЙ 2D массив объектов - PullRequest
0 голосов
/ 07 сентября 2011

У меня есть очень большой массив из 44 000+ объектов в файле javascript.

Моя проблема с редактированием файла абсолютно ужасна (особенно если мне нужно переместить каждое значение объекта 1 в массиве).

Я пробовал файл csv, но не могу, чтобы текст был моими объектами. Я рассмотрел XML и JSON, но не вижу, что это исправляет мои проблемы с редактированием.

Я надеюсь на редактор javascript, который обрабатывает 2d-массивы, такие как таблица, или, по сути, все, что создаст массив объектов и позволит мне редактировать аналогично таблице.

Спасибо

1 Ответ

1 голос
/ 07 сентября 2011

ОК, прежде всего: что, что, что? 44 000 объектов жестко запрограммированы в вашем исходном файле? Почему у вас вообще есть 44 000 объектов, и вы не можете их как-то сгенерировать?

В любом случае ...

Предполагая, что я правильно понимаю ваши требования, я предлагаю решить вашу проблему с редактированием, но при этом создать стандартный файл сценария JS, чтобы использовать для редактирования электронную таблицу Excel, сохранить исходные данные в стандартном формате Excel и написать макрос Excel. (VBA) для получения желаемого вывода файла JS при нажатии кнопки, немного похоже на нажатие кнопки компиляции в IDE. Шутки в сторону. Звучит так, будто вам нужен хороший визуальный редактор, который может перемещать объекты в вашем массиве, сдвигать ячейки вверх при удалении, и все то, в чем Excel хорош . Макрос VBA, в котором вам нужно взять данные из электронной таблицы и вывести их в виде JS-файла с допустимым объявлением массива JavaScript, будет тривиальным, не более 20 или 30 строк кода, в основном простой цикл, вложенный в цикл, должен сделать это с некоторой инициализацией, чтобы открыть файл для записи и т. д.

Принимая во внимание, что JavaScript не имеет многомерных массивов, я предполагаю, что вам нужен массив массивов, в котором каждый дочерний массив имеет одинаковую длину и содержит объекты, а желаемый вывод JS-файл - это нечто вот так (кроме гораздо большего):

var myObjectArray = [
  [ {id:1}, {id:2}, {id:3}, {id:4}  ],
  [ {id:5}, {id:6}, {id:7}, {id:8}  ],
  [ {id:9}, {id:10},{id:11},{id:12} ],
  [ {id:13},{id:14},{id:15},{id:16} ]
];

Из Excel легко создать нечто подобное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...