Подходящие структуры данных для того, чтобы сохранить файлы в localStorage (HTML5)?

Хорошо, когда нет DB для поддержания и пользователи для аутентификации. Мой преподаватель попросил, чтобы я преобразовал недавний исследовательский проект его, который использует Bespin и вычисляет ошибки, совершенные пользователями в редакторе кода как часть его исследования.

Цель состоит в том, чтобы преобразовать от MySQL до использования HTML5 localStorage полностью. Не кажется настолько твердым сделать, даже при том, что закапывание его кода могло бы занять время.

Вопрос:
Я должен хранить файлы и состояние (последнее размещение курсора и активного файла). Я уже сделал так путем реализации рекомендаций в другом потоке stackoverflow. Но хотел бы Ваш вход, рассматривающий, как структурировать содержание для использования.

Мое текущее решение> Hashmap как решение с объектами JavaScript:

files = {};
// later, saving
files[fileName] = data;

И затем храня в localStorage, использующем некоторые рекомендации

localStorage.setObject("files", files);
// Note that setObject(key, data) does not exist but is added
// using Storage.prototype.setObject = function() {...

В настоящее время я также рассматриваю использование некоторого типа числового идентификатора. Таким образом, это называет, может быть изменен без любой стычки, переименовывающей ключ в hashmap. Каково Ваше мнение о способе, которым оно решено, и Вы сделали бы это кто-либо по-другому?

7
задан Community 23 May 2017 в 11:47
поделиться

1 ответ

В настоящее время я решил после некоторого чтения и исследования, что лучший способ - хранить все в объектах, используя литералы объектов:

var files = {};
// Add loads of data

​​А затем сохранить их с помощью JSON.stringify () :

localStorage.setItem('myFiles', JSON.stringify(files));

Это хорошая практика, потому что в нем хранятся большие объемы информации, которую легко хранить и получать к ней доступ. Также это предотвращает возникновение путаницы, когда использовать простой способ добавления информации о паре ключ-значение в localStorage , а когда использовать функцию localStorage.setItem (ключ, значение)

8
ответ дан 7 December 2019 в 05:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: