Storage.setItem()

The setItem() method of the Storage interface, when passed a key name and value, will add that key to the storage, or update that key's value if it already exists.

Syntax

storage.setItem(keyName, keyValue);

Parameters

keyName
A DOMString containing the name of the key you want to create/update.
keyValue
A DOMString containing the value you want to give the key you are creating/updating.

Return value

Void.

Exceptions

setItem() may throw an exception if the storage is full. Particularly, in Mobile Safari (since iOS 5) it always throws when the user enters private mode (Safari sets quota to 0 bytes in private mode, contrary to other browsers, who allow storage in private mode, using separate data containers). Hence developers should make sure to always catch the possible exceptions from setItem().

Example

The following function creates three data items inside local storage.

function populateStorage() {
  localStorage.setItem('bgcolor', 'red');
  localStorage.setItem('font', 'Helvetica');
  localStorage.setItem('image', 'myCat.png');
}

Note: To see this used within a real world example, see our Web Storage Demo.

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'Storage.setItem' in that specification.
Living Standard  

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
localStorage 4 (Yes) 3.5 8 10.50 4
sessionStorage 5 ? 2 8 10.50 4
Feature Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support 2.1 (Yes) ? 8 11 iOS 3.2

All browsers have varying capacity levels for both localStorage and sessionStorage. Here is a detailed rundown of all the storage capacities for various browsers.

Note: since iOS 5.1, Safari Mobile stores localStorage data in the cache folder, which is subject to occasional clean up, at the behest of the OS, typically if space is short.

See also

Document Tags and Contributors

 Last updated by: fscholz,