, которые представляют хранимые на стороне клиента ассоциативные массивы, отображающие строковые ключи в значения. Теоретически объект
Storage
может хранить любые значения, которые можно копировать с применением алгоритма структурированного копирования (врезка «Структурированные копии» в главе 22). Однако на момент написания данных строк броузеры позволяли сохранять только строковые значения.
Методы объекта
Storage
позволяют добавлять новые пары ключ/значение, удалять их и получать значение, связанное с определенным ключом. Однако нет необходимости явно вызывать эти методы: вместо них можно использовать операцию индексирования и оператор
delete
и обрабатывать свойства
localStorage
и
sessionStorage
, как если бы они были обычными объектами.
При изменении содержимого объекта
Storage
любые другие объекты
Window
, имеющие доступ к той же области хранилища (т. е. отображающие документы с тем же происхождением), будут извещены об изменениях с помощью объекта события
StorageEvent
.
Свойства
readonly unsigned long length
Количество хранящихся пар ключ/значение.
Методы
void clear
Удаляет все хранящиеся пары ключ/значение.
any getltem(string key)
Возвращает значение, связанное с ключом key. (В текущих, на момент написания этих строк, реализациях всегда возвращалась строка.) Этот метод вызывается неявно при индексировании объекта
Storage
, с целью получить значение свойства с именем в аргументе key.
string key(unsigned long n)
Возвращает ключ с индексом л, хранящийся в данном объекте
Storage
, или null, если n больше или равно
length
. Обратите внимание, что порядок следования ключей может изменяться при добавлении и удалении пар ключ/значение.
void removeItem(string key)
Удаляет из объекта
Storage
ключ key и связанное с ним значение. Этот метод вызывается неявно при использовании оператора
delete
, с целью удалить свойство с именем в аргументе key.
void setItem(string key, any value)
Добавляет ключ key и значение value в данный объект
Storage
, замещая значение, прежде связанное с этим ключом key. Этот метод вызывается неявно при присваивании значения свойству объекта
Storage
с именем в аргументе key. То есть вместо явного вызова метода
setItem
можно использовать обычную операцию присваивания значения свойству.
StorageEvent
Event
Свойства
localStorage
и sessionStorage
объекта
Window
ссылаются на объекты
Storage
, представляющие хранилища на стороне клиента (раздел 20.1). Если имеется несколько окон, вкладок или фреймов, отображающих документы с общим происхождением, все они будут иметь доступ к одному и тому же хранилищу. Если сценарий в одном окне изменит содержимое хранилища, во всех других объектах
Window
, имеющих доступ к этому хранилищу, будет сгенерировано событие «storage». (Обратите внимание, что это событие не генерируется в окне, в котором были выполнены изменения.) События «storage» генерируются в объекте
Window
и не всплывают. Для них не предусматривается действий по умолчанию, которые можно было бы отменить. Обработчикам события «storage» передается объект события
StorageEvent
, свойства которого описывают изменения, внесенные в хранилище.
Свойства
readonly string key
Это свойство хранит ключ, который был установлен или удален. Если все хранилище было очищено вызовом метода
Storage.clear
, это свойство (а также свойства
newValue
и
oldValue
) будет иметь значение null.
readonly any newValue
Новое значение ключа key. Будет иметь значение null при удалении ключа. На момент написания этих строк броузеры позволяли сохранять только строковые значения.
readonly any oldValue
Старое значение изменившегося ключа key. Будет иметь значение null при добавлении нового ключа. На момент написания этих строк броузеры позволяли сохранять только строковые значения.
readonly Storage storageArea
Это свойство будет содержать то же значение, что и свойство
localStorage
или
sessionStorage
объекта
Window
, принявшего это событие, и указывает, содержимое какого хранилища изменилось.
readonly string url
URL-адрес документа, сценарий которого внес изменения в хранилище.
Style
HTML-элемент <style> (Node, Element)
Объект
Style
представляет HTML-тег
<style>.
Свойства
boolean disabled
Установка этого свойства в значение true отключит таблицу стилей, связанную с данным элементом <style>, а установка в значение false снова включит ее.
string media
Это свойство соответствует HTML-атрибуту
media
и определяет устройства, при отображении в которых должна применяться указанная таблица стилей.
boolean scoped
Имеет значение true, если в элементе
<style>
присутствует HTML-атрибут
scoped
, и false - в противном случае. На момент написания этих строк броузеры не поддерживали контекстные (scoped) таблицы стилей.