Podsumowanie
Operator function
jest używany do definiowania funkcji wewnątrz wyrażenia.
Składnia
function [nazwa]([argument1[, argument2[, ..., argumentN]]]) { instrukcje }
Parametry
nazwa
- Nazwa funkcji. Może zostać pominięta, w takim wypadku funkcja staje się anonimowa. Nazwa jest tylko lokalna i istnieje wewnętrz funkcji.
argumentN
- Nazwa argumentu, który ma zostać przekazany do funkcji. Funkcja może posiadać do 255 argumentów.
instrukcje
- Instrukcje, które stanowią ciało funkcji.
Opis
Wyrażenie funkcji jest bardzo podobne do deklaracji funkcji i posiada niemal identyczną składnię (zobacz function, aby uzyskać bardziej szczegółowe informacje). Główną różnicą pomiędzy wyrażeniem a definicją jest nazwa funkcji, która może zostać pominięta i utworzyć funkcję anonimową. Zobacz Funkcje, aby uzyskać informacje o różnicach między instrukcjami funkcji a wyrażeniami funkcji.
Przykłady
Poniższy przykład definiuje nienazwaną funkcję i przypisują ją do x
. Funkcja zwraca kwadrat jej argumentów:
var x = function(y) { return y * y; };
Nazwane wyrażenie
var math = {
'factorial': function factorial(n) {
if (n <= 1)
return 1;
return n * factorial(n - 1);
}
};
Specyfikacja
Specyfikacja | Status | Komentarze |
---|---|---|
ECMAScript 2017 Draft (ECMA-262) The definition of 'Function definitions' in that specification. |
Draft | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Function definitions' in that specification. |
Standard | |
ECMAScript 5.1 (ECMA-262) The definition of 'Function definition' in that specification. |
Standard | |
ECMAScript 3rd Edition (ECMA-262) The definition of 'Function definition' in that specification. |
Standard | Zaimplementowano w JavaScript 1.5. |
Wsparcie przeglądarek
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |