Definice funkcí JavaScriptu

funkce JavaScriptu jsou definovány klíčovým slovemfunction.

můžete použít deklaraci funkce nebo výraz funkce.

Deklarace Funkce

Dříve v tomto návodu jste se naučili, že funkce jsou deklarovány s následující syntaxí:

funkce functionName(parametry) {
// kód, který bude proveden
}

Deklarované funkce nejsou provedeny okamžitě. Jsou „uloženy pro pozdější použití“ a budou provedeny později, když jsou vyvolány (vyzvány).

Příklad

funkce mojefunkce(a, b) {
return a * b;
}

Zkuste si to Sami “

Středníky se používají k oddělení spustitelný JavaScript prohlášení.
protože deklarace funkce není spustitelným příkazem, není běžné ji zakončit středníkem.

funkční výrazy

funkci JavaScriptu lze také definovat pomocí výrazu.

funkční výraz lze uložit do proměnné:

příklad

var x = funkce (a, b) {návrat a * B};

Zkuste si to Sami “

Po výraz funkce byl uložen v proměnné, proměnné mohou být použity jako funkce:

Příklad

var x = funkce (a, b) {return a * b};
var z = x(4, 3);

Zkuste si to Sami “

funkce výše, je vlastně anonymní funkce (funkce bez názvu).

funkce uložené v proměnných nepotřebují názvy funkcí. Vždy se vyvolávají (volají) pomocí názvu proměnné.

výše uvedená funkce končí středníkem, protože je součástí spustitelného příkazu.

Konstruktor funkce ()

jak jste viděli v předchozích příkladech, funkce JavaScriptu jsou definovány klíčovým slovem function.

funkce lze také definovat pomocí vestavěného konstruktoru funkcí JavaScript s názvem Function().

Příklad

var mojefunkce = new Function(„a“, „b“, „return a * b“);
var x = mojefunkce(4, 3);

Zkuste si to Sami “

skutečně nemusíte používat funkci konstruktoru. Výše uvedený příklad je stejný jako psaní:

Příklad

var mojefunkce = funkce (a, b) {return a * b};
var x = mojefunkce(4, 3);

Zkuste to Sami “

Většinu času, se můžete vyhnout pomocí new klíčové slovo v jazyce JavaScript.

funkce zdvihání

dříve v tomto tutoriálu jste se dozvěděli o „zdvihání“ (zdvihání JavaScriptu).

zdvihání je výchozí chování JavaScriptu při přesunu deklarací na vrchol aktuálního rozsahu.

zdvihání se vztahuje na deklarace proměnných a na deklarace funkcí.

Protože toto, JavaScript funkce může být volána předtím, než jsou deklarované:

mojefunkce(5);
funkce mojefunkce(y) {
return y * y;
}

Funkce definované pomocí výrazu nejsou zvedla.

Self-Vyvolání Funkce

Funkce výrazy mohou být „self-vyvolání“.

samovzývající výraz je vyvolán (spuštěn) automaticky, aniž by byl vyvolán.

funkční výrazy se spustí automaticky, pokud je výraz následován ().

nelze vyvolat deklaraci funkce.

musíte přidat do závorek funkce naznačují, že to je výraz funkce:

Příklad

(function () {
var x = „Hello!!“; // Vyvolá sám
})();

Zkuste si to Sami “

funkce výše, je vlastně anonymní self-vyvolání funkce (funkce bez názvu).

Funkce Mohou Být Použity jako Hodnoty

funkce Javascriptu mohou být použity jako hodnoty:

Příklad

funkce mojefunkce(a, b) {
return a * b;
}
var x = mojefunkce(4, 3);

Zkuste si to Sami “

JavaScript funkce mohou být použity ve výrazech:

Příklad

funkce mojefunkce(a, b) {
return a * b;
}
var x = mojefunkce(4, 3) * 2;

Zkuste si to Sami “

Funkce jsou Objekty,

typeof operátor v JavaScript vrátí „funkce“ pro funkce.

ale funkce JavaScriptu lze nejlépe popsat jako objekty.

funkce JavaScriptu mají vlastnosti i metody.

vlastnost arguments.length vrací počet argumentů přijatých při vyvolání funkce:

Příklad

funkce mojefunkce(a, b) {
návrat argumenty.délka;
}

Zkuste si to Sami “

toString() metoda vrátí funkce jako řetězec:

Příklad

funkce mojefunkce(a, b) {
return a * b;
}
var txt = mojefunkce.toString();

Zkuste to Sami “

funkce definovaná jako vlastnost objektu, se nazývá metoda na objekt.
funkce určená k vytváření nových objektů se nazývá Konstruktor objektů.

Arrow Functions

Arrow functions umožňuje krátkou syntaxi pro zápis funkčních výrazů.

nepotřebujete klíčové slovo function, Klíčové slovo return a složené závorky.

Příklad

// ES5
var x = funkce(x, y) {
return x * y;
}
// ES6
const x = (x, y) => x * y;

Zkuste si to Sami “

Šipka funkce nemají vlastní this.Nejsou vhodné pro definování objektových metod.

funkce šipky nejsou zvednuty. Musí být definovány před jejich použitím.

použití constje bezpečnější než použití var, protože funkční výraz má vždy konstantní hodnotu.

Klíčové slovo return a složené závorky můžete vynechat, pouze pokud je funkce jediným příkazem. Z tohoto důvodu, to může být dobrý zvyk, aby se vždy udržet je:

Příklad

const x = (x, y) => { return x * y };

Zkuste to Sami “

Arrow funkce nejsou podporovány v IE11 nebo dříve.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.

More: