Deo zbornika Učimo Javascript
Streličaste (arrow) funkcije
Streličaste (arrow) funkcije su kraći način pisanja funkcija u Javascriptu. One su posebno zgodne za kratke, jednolinijske funkcije.
Važan aspekt arrow funkcija je da nemaju vrednost this
, već se ona preuzima iz okolnog opsega. U praksi, ključna razlika što this
unutar obične i streličaste funkcije neće imati istu vrednost.
Jednolinijske streličaste funkcije
Tradicionalno, funkcijski izraz pišemo ovako:
const saberi = function (x, y) {
return x + y
}
Isti funkcijski izraz, napisan streličastom sintaksom, bi izgledao ovako:
const saberi = (x, y) => x + y
Ako streličasta funkcija ima samo jedan parametar, onda zagrada oko parametra nije potrebna:
const pozdrav = ime => 'Zdravo korisniče ' + ime
Kao što vidimo, nigde nema ključnih reči function
ili return
. Ukoliko telo funkcije ima samo jedan izraz, nisu potrebne vitičaste zagrade, a rezultat izraza se implicitno vraća.
Jednolinijske streličaste funkcije automatski umeću return
naredbu, tako da je ne moramo pisati.
Višelinijske streličaste funkcije
Ukoliko streličasta funkcija ima više linija, onda je return
naredba neophodna, zajedno sa vitičastim zagradama oko tela funkcije:
const saberi = (x, y) => {
const rezultat = x + y
return rezultat
}