Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

setItem method

Sets a key/value pair.

Web Storage, Section 4.1Internet Explorer 8



var retval = Storage.setItem(bstrKey, bstrValue);


bstrKey [in]

Type: String

The name of the key (a valid UTF-16 string, including the empty string).

bstrValue [in]

Type: String

The value (a valid UTF-16 string) of the key/value pair.

Return value


This method can return one of these values.

Return codeDescription

The operation completed successfully.


There is insufficient memory to complete the operation.


The operation is not allowed.


One or more arguments are invalid.


IE9 mode only.

The operation would exceed storage limits.




The operation would exceed storage limits. For versions earlier than Internet Explorer 10, QUOTA_EXCEEDED_ERR is returned.


Standards information


This implementation of setItem differs from setItem in return code only. In IE9 mode, this method might also return W3CException_DOM_QUOTA_EXCEEDED_ERR.

Any valid UTF-16 string, including the empty string, is a valid key name. If bstrKey or bstrValue are not valid UTF-16 strings, the setItem method throws an error.

Non-string variable types are automatically type-converted to strings, if possible. Structured data must be converted to a string before storing.

This method first checks if a key/value pair with the specified bstrKey already exists in the list associated with the object. If not, a new key/value pair with the given value is added to the list. If the key/value pair already exists, the value is updated.

Keys are also available as expando properties on the Storage object. If the property name does not exist, a key/value pair is created for it. For an illustration of this, see the example below.

If the size of the value is larger than the disk quota remaining for the storage area, an "Out of memory" exception is thrown. If necessary, check remainingSpace before storing the value.

Attempts to read or write a secured item from script running in the context of an unsecured URL are not permitted.


The following code examples are equivalent. The first sets a key/value pair by calling setItem. The second uses array syntax to find the key in the collection. The final example uses property name syntax to set an expando property.

sessionStorage.setItem('myKey', '...');
sessionStorage['myKey'] = '...'; 
sessionStorage.myKey = '...'; 

See also




© 2017 Microsoft