Всем привет! В этом материале рассмотрим библиотеку, которая сделает вашу работу с localstorage , cookie и session простой и удобной.

Как работать с хранилищами с использованием Basil.js.

Всем привет! В этом материале рассмотрим библиотеку, которая сделает вашу работу с localstorage, cookie и session простой и удобной.

Библиотека называется Basil.js. В ней нет совершенно ничего сложного, поэтому сразу начнем разбираться, как ее устанавливать и использовать.

Чтобы установить Basil.js, вам нужно скачать все необходимые файлы с официального сайта и подключить их. Справа на сайте есть две ссылки на архивы .zip и tar.gz.

Теперь перейдем к использованию. Сначала рассмотрим базовый функционал.

basil = new window.Basil(options);

// базовые методы
basil.set('foo', 'bar'); // сохранить значение 'bar' под ключом 'foo'
basil.get('foo'); // вернет 'bar'
basil.remove('foo'); // удалит значение 'foo'

// продвинутые методы
basil.check('local'); // булеан. Проверит, доступен ли localstorage
basil.reset(); // сбросит все сохраненные значения под данным пространством имен

Как видите, ничего сложно нет. Теперь поговорим про продвинутое использование.

basil = new window.Basil(options);

// сохранение "на лету" через basil
// сохранить значение 'bar' под ключом 'foo' в локальном хранилище
basil.set('foo', 'bar', { 'storage': 'local' });

// Доступ к нативным хранилищам
// С basil API, но без пространства имен для синтаксического анализа JSON

// кукисы
basil.cookie.get(key);
basil.cookie.set(key, value, { 'expireDays': days, 'domain': 'mydomain.com' });

// локальное хранилище
basil.localStorage.get(key);
basil.localStorage.set(key, value);

// хранилище сессий
basil.sessionStorage.get(key);
basil.sessionStorage.set(key, value);

Конфигурация

options = {
  // Пространство имен. Установить пространство имен для ваших сохраненных данных basil
  // default: 'b45i1'
  namespace: 'foo',

  // хранилища. Укажите все basil поддерживаемые хранилища и приоритетный порядок
  // default: `['local', 'cookie', 'session', 'memory']`
  storages: ['cookie', 'local']

  // хранилище. Установите значение по умолчанию для использоуемого хранилища
  // по умолчанию: определяет лучшее доступное хранилище среди доступных
  storage: 'cookie'

  // срок хранения. По умолчанию – количество дней до истечения кукисов
  // default: 365
  expireDays: 31

};

Совместимость

  • Firefox 3.5+
  • Internet Explorer 7 (требуется json2.js)
  • Internet Explorer 8+
  • Chrome 4+
  • Safari 4+

А у меня на этом все. Спасибо за внимание!