From GreaseSpot Wiki
Jump to: navigation, search


This method retrieves a value that was set with GM_setValue. See GM_setValue for details on the storage of these values.

Compatibility: Greasemonkey 0.3b+


function GM_getValue( name, default )


String The property name to get. See GM_setValue for details.
Optional. Any value to be returned, when no value has previously been set.


When this name has been set
String, Integer or Boolean as previously set
When this name has not been set, and default is provided
The value passed as default
When this name has not been set, and default is not provided


Retrieving the value associated with the name 'foo':

//outputs either the value associated to foo, else undefined


Retrieving the value associated with the name 'timezoneOffset' with a default value defined:

//GM_getValue() returns the value -5 (integer) if no value 
//   associated with the name timezoneOffset is found in storage

GM_log(GM_getValue("timezoneOffset", -5)); 

A more complex example:

If you have used JSON.stringify to place an object into storage, JSON.parse shall be used to convert it back from a string to a Javascript Object.

//Note that if the value associated with foo is an invalid
//   JSON string, JSON.parse will fail.
//   Also Note the default value is in quotes (thus a string) rather than an object literal

var storedObject = JSON.parse( GM_getValue("foo", "{}") ); 

if(!storedObject) {
  //JSON.parse() should never return any value that type-casts to false, assume there is an 
  //   error in the input string
  GM_log('Error! JSON.parse failed - The stored value for "foo" is likely to be corrupted.');

See Also