Det är lite praktiskt också, jag ska visa ett enkelt exempel
function hanteraKlickPåKnapp(djurTyp)
{
//Ajax-kod
ajax.onSidanLaddad = function()
{
alert(djurTyp); //Här kan jag använda variabeln djurTyp, trots att den inte är medskickad som parameter till just den här funktionen. Den ärver alltså variablerna från contextet ovanför
};
};
Som du ser i mitt lilla exempel så kan du alltså få tillgång till variabler från contextet ovanför dig (som i sin tur ärver från contextet ovanför sig, osv), vilket gör att du slipper göra flera publika funktioner, _och_ slippa göra en massa publika variabler/klasser/behöva skicka med en massa parametrar på något sätt. Istället kan man skriva all kod i en, enda publik funktion som om den vore synkron istället för asynkron. I exemplet så följer ju t.ex. "djurTyp" med automatiskt, men även "ajax" följer med, om man nu till exempel vill göra ännu ett nytt anrop mot servern