Föll og blokkir

Öll forrit í JavaScript eru föll og eru venjulega skilgreind eitthvað á þessa leið:
function veldi (x) { return x*x; }
Ekki er nauðsynlegt að föll skili gildi, en þegar þau gera það má nota þau á eðlilegum stöðum í kóða. Þannig má bæði kalla á fallið veldi() með
x2 = veldi(x);
og
veldi (x);
þótt síðari setningin ein sér þjóni litlum tilgangi.

Það er athyglisvert að föll í JavaScript eru í reynd gagnatög, þannig að þau má setja í fylki, senda þau sem færibreytur, o.sv.frv. Dæmi um þetta er þegar maður skrifar eigin röðunarfall og kallar svo á það með fylkis-aðgerðinni sort(), samanber þennan kóða:

listArray.sort(aldursrod);
Á eftir heiti falls koma tveir svigar () fyrir færibreytur fallsins. Yfirleitt er skýrast að tiltaka þessar breytur, en það er þó ónauðsynlegt. Fallið getur kannað hversu margar færibreytur því voru sendar og sótt þær sjálft, ef svo ber undir.

Á eftir svigunum opnast slaufusvigi og þar með hefst kóði fallsins. Fallinu lýkur svo með því að þessi slaufusvigi lokast. (Í Pascal eru orðin begin og end notuð í stað slaufusviga). Það sem slaufusvigarnir ramma inn nefnist blokk í forritinu. Svona blokkir eru hvarvetna notaðar þar sem taka þarf fleiri en eina setningu saman í eina heild, til dæmis í if-setningum eða for-lykkjum, sem nánar er fjallað um hér á eftir.