Tredun ohjelmistokehittäjien kurssimateriaaleja
Funktioiden avulla voidaan kirjoittaa modulaarista ohjelmakoodia, jakaa toiminnallisuus pieniin helposti testattaviin paloihin. Samaa funktiota voi käyttää uudelleen ja uudelleen. Puhdas funktio saa sisäänsä tietoa parametrien välityksellä (input), ja niitä voi olla hyvinkin monta, ja se palauttaa return aina yhden arvon (output). JavaScriptissä kaikki funktiot eivät aina saa parametreja eivätkä ne aina palauta paluuarvoa, joten ne eivät ole ns. puhtaita funktioita.
Funktiolle täytyy aina keksiä nimi, ja se kirjoitetaan JavaScriptissä pienellä kirjaimella. Jos funktion nimi on pidempi, ensimmäistä seuraavat sanat kirjoitetaanisolla kirjaimella, kuten tehtiin myös muuttujien nimien kanssa.
Funktion voi määritellä JavaScriptissä kolmella eri tavalla:
function sum(x , y){
return x + y;
}
Tämä määrittelee funktion, mutta antaa mahdollisuuden muuttaa funktion määritelmää myöhemmin.
const sum = function(x , y){
return x + y;
}
const:in avulla määriteltyä funktiota ei pysty muuttamaan myöhemmin (turvallisempi). Tätä viimeisintä tapaa suositaan nykyään.
const sum = (x , y) => {
return x + y;
}
Funktiota täytyy aina kutsua. Se tapahtuu kirjoittamalla funktion nimi ja sen jälkeen sulkeisiin parametrit pilkulla eroteltuna, mikäli niitä on useampia. Jos funktiolle ei anna oikeaa määrää parametrejä, funktio ei toimi.
const sum = (x , y) => {
return x + y;
}
sum(6, 15);
Funktion tuloksen voi tulostaa konsoliin laittamalla funktion kutsu console.login sisään.
const sum = (x , y) => {
return x + y;
}
console.log(sum(6, 15));
Funktion tuloksen voi myös tallentaa muuttujaan, jotta tulosta voidaan käyttää johonkin toiseen tarkoitukseen.
const sum = (x , y) => {
return x + y;
}
let combination = sum(6, 15);
Koodilohko on joukko käskyjä, jotka kuuluvat yhteen ja suoritetaan yhdessä tietyssä tilanteessa.
Esimerkiksi:
JavaScriptissä koodilohkot merkitään aaltosulkeilla.
{
//Tämä on koodilohko
}
Kaikki yksien aaltosulkeiden sisällä oleva koodi kuuluu samaan lohkoon. Lohkon sisällä voi olla myös uusia sisälohkoja.
Esimerkki
const greet = (name) => {
console.log("Hello " + name + "!");
console.log("Nice to see you!");
}
Pythonissa sisennys määrittää koodilohkon ja ilman oikeaoppisia sisennyksiä koodi ei toimi.
JavaScriptissä koodilohko määritetään aaltosulkeilla.
Sisennys on silti tärkeä luettavuuden vuoksi, vaikka selain ei sitä vaadi. Koodi siis toimii, vaikka sisennykset olisi tehty väärin. Opettele kuitenkin tekemään sisennykset oikein, jotta koodisi näyttää ammattimaiselta ja siistiltä.
Hyvä tapa:
if (score > 50) {
console.log("Passed");
}
Toimiva, mutta ei suositeltu:
if (score > 50) { console.log("Passed"); }