Inherits from | |
Technology area | Safari Extensions |
Availability | Available in Safari 5.0 and later. |
The SafariExtensionsSettings
class provides a place for your extension to store settings that should persist between sessions.
Important: Use SafariExtensionSecureSettings
to store sensitive settings, such as passwords or credit card numbers.
You can access settings using the provided methods or using JavaScript’s built-in syntax, as follows:
// Get a value. |
safari.extension.settings.someProperty |
safari.extension.settings["someProperty"] |
safari.extension.settings.getItem("someProperty") |
// Set a value. |
safari.extension.settings.someProperty = 42; |
safari.extension.settings["someProperty"] = 42; |
safari.extension.settings.setItem("someProperty", 42"); |
// Delete a value. |
delete safari.extension.someProperty; |
delete safari.extension["someProperty"]; |
safari.extension.removeItem("someProperty"); |
Note that there is a minor difference for properties that don’t exist: JavaScript’s build-in syntax returns undefined
, but the getItem
method returns null
.
Removes all key-value pairs.
void clear (void);
If there is nothing to remove, this method does nothing.
On success, dispatches a SafariExtensionSettingsChangeEvent
event describing the change.
Returns the current value of a key.
any getItem (in DOMString key);
The key whose value is being returned.
If the key exists, its current value; otherwise, null
.
Removes a key.
void removeItem (in DOMString key);
The key being removed.
If there is no value with the given key, this method does nothing.
On success, this method dispatches a SafariExtensionSettingsChangeEvent
event describing the change.
Sets the value of a key.
void setItem (in DOMString key, in any value);
The key whose value is being set.
The value being set.
The behavior of this method is undefined if value
cannot be serialized to a JSON value.
On success, this method dispatches a SafariExtensionSettingsChangeEvent
event describing the change.
Last updated: 2010-07-13