If you get WinMPQ and open the war3patch.mpq, you can extract the Scripts\common.j and Scripts\Blizzard.j files. Those contain virtually all the functions that you can call in jass.
Most useful, generally, is to convert GUI actions to jass and see what functions they call. Most of those functions are in Blizzard.j. You can find them in Blizzard.j and see what they do. Often they just call a common.j function, so you could skip a step and call just that instead.
Other times, they do special things to make sure that they've been passed good parameters, and other such safety-ness. A knowledgeable user could be more particular and thus avoid having to call the safe versions of functions.
Jass lets you declare local variables that are only used within the instance of the function that they're defined in, so you don't need to worry about crossing wires. To call a local, you type
Code:
local variabletype variablename
which could be, for example,
Code:
local unit Caster
local group UnitsInRange
local real FacingAngle
etc. etc.
Are you familiar with programming languages? Jass is just another language, albeit limited in some ways and specially designed to manipulate the Warcraft 3 engine.