WoWWiki

This wiki contains inaccurate and out-of-date information. Please head over to https://wowpedia.fandom.com for more accurate and up-to-date game information.

READ MORE

WoWWiki
Advertisement

WoW API < setglobal

getglobal and setglobal are deprecated and replaced with _G[][1]. Their functionality will be removed from the game at a future date. Change all references of getglobal and setglobal:

 var = getglobal(varName)        --getglobal deprecated
 var = _G[varName]               --new syntax to get a global
 setglobal(otherName, otherVar)  --setglobal deprecated
 _G[otherName] = otherVar        --new syntax to set a global


Set a global variable, from a string.

setglobal( "globalName", value )

Parameters[]

Arguments[]

("globalName", value)
globalName
String - Name of the global you want to change.
value
Any - Value you want to set the global to.

Returns[]

Always returns nil.

Example[]

/script setglobal( "MyVariable", 1234 )

Result[]

MyVariable = 1234

Details[]

As of the introduction of getfenv() into the API, setglobal() and getglobal() are somewhat superfluous. You can always do something along the lines of:

 local _G = getfenv()
 local prevval = _G["MyVariable"]   -- "getglobal()"
 _G["MyVariable"] = 1234            -- "setglobal()"

Function calls always cost some overhead, so if a large number of getglobal calls are being made, the getfenv table will be a faster route. Note that for few or infrequent calls the performance gain of this method is negligible.

Advertisement