a JavaScript függvényeket afunction
kulcsszóval definiáljuk.
használhat függvénydeklarációt vagy függvénykifejezést.
Függvénydeklarációk
ebben az oktatóanyagban korábban megtanultad, hogy a függvények A következő szintaxissal vannak deklarálva:
/ / végrehajtandó kód
}
a deklarált funkciók nem kerülnek végrehajtásra azonnal. Ezek “későbbi felhasználásra kerülnek”, és később kerülnek végrehajtásra, amikor meghívják őket.
példa
visszatérés a * b;
}
próbáld ki magad ”
a pontosvesszőket a végrehajtható JavaScript utasítások elválasztására használják.
mivel a függvénydeklaráció nem végrehajtható utasítás, nem gyakori, hogy pontosvesszővel fejezzük be.
Függvénykifejezések
a JavaScript függvény kifejezéssel is definiálható.
egy függvény kifejezés tárolható egy változóban:
példa
próbáld ki magad “
miután egy függvény kifejezést tároltak egy változóban, a változó függvényként használható:
példa
var z = x(4, 3);
próbáld ki magad ”
a fenti függvény valójában névtelen függvény (név nélküli függvény).
a változókban tárolt függvényeknek nincs szükségük függvénynevekre. Ezeket mindig a változó nevével hívják meg (hívják).
a fenti függvény pontosvesszővel végződik, mert egy végrehajtható utasítás része.
a függvény () konstruktor
amint azt az előző példákban láthattuk, a JavaScript függvényeket a function
kulcsszóval definiáljuk.
a függvények definiálhatók egy beépített JavaScript függvény konstruktorral is, amelynek neve Function()
.
példa
var x = myFunction (4, 3);
próbáld ki magad ”
valójában nem kell használni a függvény konstruktort. A fenti példa megegyezik az írással:
példa
var x = myFunction(4, 3);
próbáld ki magad ”
legtöbbször elkerülheti a new
kulcsszó használatát a JavaScript-ben.
funkció emelő
korábban ebben a tutorial, akkor tanult “emelő” (JavaScript emelő).
az emelés a JavaScript alapértelmezett viselkedése, amikor a deklarációkat az aktuális hatókör tetejére helyezi.
az emelés a változó deklarációkra és a funkció deklarációkra vonatkozik.
emiatt a JavaScript függvények meghívhatók a deklarálás előtt:
funkció myFunction (y) {
visszatérés y * y;
}
a kifejezéssel definiált függvényeket nem emelik fel.
Önhívó függvények
a Függvénykifejezések “önhívóvá”tehetők.
egy önhívó kifejezés meghívása (indítása) automatikusan, meghívás nélkül történik.
a Függvénykifejezések automatikusan végrehajtódnak, ha a kifejezést a () követi.
Ön nem hívhat meg függvénydeklarációt.
zárójeleket kell hozzáadnia a függvény körül, hogy jelezze, hogy ez egy függvény kifejezés:
példa
var x = “Hello!!”; / / Felhívom magam
})();
próbáld ki magad ”
a fenti funkció valójában egy névtelen önhívó funkció (név nélküli funkció).
a funkciók értékként használhatók
a JavaScript függvények értékként használhatók:
példa
visszatérés a * b;
}
var x = myFunction (4, 3);
próbáld ki magad “
JavaScript függvények használhatók kifejezésekben:
példa
visszatérés a * b;
}
var x = myFunction(4, 3) * 2;
próbáld ki magad ”
a függvények objektumok
a JavaScript typeof
operátora a függvényekhez “function” értéket ad vissza.
de a JavaScript függvények leginkább objektumokként írhatók le.
a JavaScript függvényeknek mind tulajdonságai, mind módszerei vannak.
a arguments.length
tulajdonság a függvény meghívásakor kapott argumentumok számát adja vissza:
példa
visszatérési argumentumok.hossza;
}
próbáld ki magad ”
a toString()
módszer karakterláncként adja vissza a funkciót:
példa
visszatérés a * b;
}
var txt = myFunction.toString ();
próbáld ki magad ”
az objektum tulajdonságaként definiált függvényt metódusnak nevezzük az objektumhoz.
az új objektumok létrehozására tervezett függvényt objektumkonstruktornak nevezzük.
Arrow Functions
Arrow functions lehetővé teszi a rövid szintaxis írás funkció kifejezéseket.
nincs szükség az function
kulcsszóra, a return
kulcsszóra és a göndör zárójelre.
példa
var x = funkció (x, y) {
visszatérés x * y;
}
// ES6
const x = (x, y) =>x * y;
próbáld ki magad ”
a Nyílfunkcióknak nincs saját this
.Nem alkalmasak az objektum módszerek meghatározására.
nyíl funkciók nem emelik. Használatuk előtt meg kell határozni őket.
a const
használata biztonságosabb, mint a var
használata, mert a függvénykifejezés mindig állandó érték.
csak akkor hagyhatja ki a return
kulcsszót és a zárójeleket, ha a függvény egyetlen utasítás. Emiatt, jó szokás lehet, ha mindig megtartjuk őket:
példa
próbáld ki magad ”
a Nyílfunkciók nem támogatottak az IE11 vagy korábbi verziókban.