JavaScript: Funkce funguje. JS programovací jazyk

Návrhy na tvorbu dynamického obsahu na webu se staly normou. Statické stránky a sestavení stránek šablony dokončily své poslání. Nicméně, moderní web-resource nemusí být předložen k sadě stránek generovaných a aktualizovaného serveru prohlížeče (JS + AJAX).

[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_331.jpeg [/palec]
Web- zdroj v době příchodu návštěvníka může být několik titulů pro záznam, trochu textu v «hlavy», jen pár řádků kódu v «těla» a všechno. Zbytek "zamyslí" v procesu práce návštěvníka - to je ideální místo nebo chce být takový.


Umístění Popis a povaha funkcí

JavaScript - je Zkušenosti v mnoha desetiletí. Má významnou historii vývoje, moderní a kvalifikovaný tým vývojářů. Jazyk je skvěle promyšlen, spolehlivý, krásný a dává opravdovým schopnostem pro vývojáře psát slušný kód a sebevylepšení.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_542.jpeg [/palec]
Pojem algoritmu Zanedbání funkce zde v zásadě chybí. Samozřejmě, že vývojář může v kterémkoli místě stránek insert kód skriptu umístěn do něj a on bude popraven. Jaký je však bod v kódu, který se provádí pouze jednou: při načítání (přetížení) stránky? Je možné nastavit počáteční hodnoty všech nevýznamných proměnných. Skript je místo pro popis potřebných proměnných a funkcí, než dobrý kód napsaný pro sebe. Je to souborfunkce jsou podstatné a smysluplné, možná - jejich vzájemná přímá komunikace, ale častěji se to děje jinak. Místo popisu funkce a místo její aplikace není stejné.


Není nutné, aby tato funkce bude volat další funkce přímo, můžete to udělat nepřímo tvorbou dynamického kódu. Návštěvník rozhodne v rámci tohoto kódu a pracuje na zcela odlišném systému funkcí.

Funkční dynamika

Funkční dynamika - se nejen a ne rukojeti, jehož prvky stránky, je vybaven prvky, které tvoří horní a okamžitých posluchači mohou také lišit.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_673.jpeg [/palec]
Opatření na Stránka se rozšiřuje podle jeho prvků a chování návštěvníka. Přesuny myši, tlačítka na klávesnici, kliknutí, položky události a další okolnosti spouštějí požadované funkce. Nejprve zde neexistuje žádná konzistence a neexistuje paralelismus. Zde je adekvátní odezva webových zdrojů na události. Jak rychle javascript spustit pro konkrétní funkce závisí na celé řadě technických (počítačového odkazu) a sémantické (logický algoritmus, oblasti, což znamená, že problém) faktory. Ve skutečnosti lze tvrdit, že něco funguje paralelně, ale něco se naplní po něčem, ale v tomto zvláštním smyslu nemá smysl. Je důležité, aby funkce JavaScriptu byla příležitostí vytvořit odpovídající reakci na akce návštěvníka. Toto je nové myšlení ve vývoji: distribuované zpracování informací v střevách zvlášťpřevzatý prohlížeč!

Syntaxe proměnných a funkcí

proměnné javascript jsou umístěny v tagu "script" a funkčním těle. Funkce jsou definovány stejným způsobem. Neexistuje zvláštní smysl psát uvnitř funkce, ale nemusí existovat další funkce, ale to může být nutné z různých a dobře-důvodů.
Popis obvykle začíná s klíčovým slovem «funkce», následován svým jménem, ​​seznam argumentů v závorce a funkce čárky těla ve složených závorkách.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_584.jpeg [/palec]
V tomto Příklad popisuje dvě funkce, které poskytují výměnu AJAX mezi stránkou a serverem. Proměnná scXHR je popsána výše, takže je dostupná v InitXML i uvnitř WaitReplySC.

Název funkce a parametr "funkce"

Zde byla prezentována asynchronní verze, když je po odpovědi serveru volána funkce javascript na funkci. Avšak přijetí odpovědi ze serveru, WaitReplySC označuje označit strana je naplňuje přijaté informace a způsobuje další funkce, které mohou také iniciovat následující požadavek na server. Je také důležité poznamenat, že funkce WaitReplySC je funkce. Ale v řádku scXHR.onreadystatechange = WaitReplySC je předán jako parametr. Toto je obecné pravidlo přenosu funkcí na jiné funkce jako parametry. Zadání závorek a předávání jejich parametrů (parametrů) - funkce bude provedena okamžitě. Prošel jen jménem, ​​dobře a to z toho. Volání funkce provede ten, kdo obdržel jeho jméno. Funkce, která je implementována prostřednictvím AJAX, která vám umožňuje volat funkci javascript prostřednictvím přijatých datze serveru. Ve skutečnosti, odeslání požadavku na server, nebo jiná funkce může absolutně není „vědět“, která funkce je koncipován a jaké informace.

Funkce Exit a její výsledek

Funkce těla, můžete psát nějaké jazykové operátory, kteří ve skutečnosti k tomu určené. V rámci funkce jsou k dispozici proměnné uvnitř i vně funkce, nikoliv ty, které jsou popsány v jiných funkcích.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_215.jpeg [/palec]
Pokud se vám Chcete-li vrátit funkci vrácenou funkcí, můžete použít zpáteční operátor javascript: return. V těle funkce může být dostatečný počet operátorů návratu. Není nutné, aby všichni vrátili výsledek stejného typu.
Obvykle vývojáři jsou velmi poctěni, že příležitosti a podle potřeby rozhodnout odstoupit z funkce, jakmile je to možné. Není nutné spustit celý algoritmus funkce, pokud je možné ji opustit dříve.

Argumenty funkcí

argumentů předaných seznamu funkcí, čárka, jsou v závorkách a jsou ihned po jeho název. Jako argumenty se používají názvy proměnných, ale můžete také přímo přenášet hodnoty. Chcete-li funkci JavaScript povolit převedení funkce na funkci, stačí zadat její název bez závorek.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_506.jpeg [/palec]
V rámci funkce k dispozici argument variabilní, má vlastnost délky. Na argument , argumenty

, můžete k poslednímu argumentu [arguments.length-1] zobrazit libovolný argument funkce. Změnaargument funkce je ve skutečnosti uvnitř funkce, ale ne za její hranice. Chcete-li něco změnit z funkce, musíte použít javascript zpáteční operátor, přes který předat požadovanou hodnotu mimo. Po dokončení funkce bude vše, co bylo spojeno se spuštěním, zničeno. Během provádění může funkce měnit externí proměnné kromě těch, které jsou popsány v jiných funkcích, včetně interních. Argumenty mají vlastnost callee, která má vyvolat funkci, která se provádí v daném okamžiku. Pokud voláte sami sebe, pak volba javascript k této funkci umožní rekurzivní implementaci.

Použití funkcí

Hlavním zájmem funkcí je obsluhovat události prohlížeče. K tomu je prakticky každá značka příležitost specifikovat název události a její funkci, její zpracování. Můžete zadat více událostí, ale pro každou událost je zadána pouze jedna funkce. Jedna funkce může sloužit několika prvkům stránky a několika událostem. Volba «to» může vysílat informační funkci, kde to bylo voláno. Klasické použití funkce JS - manipulátory událostí na prvcích. V tomto příkladu, ve formě vstupní /výstupní funkce se nazývá scfWecomeGo () nebo scfWelcomeCancel (), a při výběru druhu provozu scfMenuItemClick (tento).
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_407.jpeg [/palec]
V druhém případě pokud bude schválen parametr «tato», která vám umožní magicky vědět, která je panna, tam byl problém. Obecně platí, že javascript tak kvalitativně implantována do DOM, a je to tak snadné, umožňujeprocházet prvky, sbírat informace, že dynamika stránky může být nepředvídatelná. Funkce nemusí nutně vrátit řetězec znaků, číslo nebo jinou funkci. Může vrátit plný HTML prvek, ve kterém bude požadován počet prvků s vlastními zpracovateli jejich událostí. Umístěním takové položky na stránku vývojář vytvoří novou funkcionalitu, která je dobrá, pokud jde o vyřešení problému a uspokojení zájmů návštěvníků, ale spíše obtížné při implementaci. Začátek takového plnohodnotného vývoje je snadno zmatený ve svém vlastním kódu, ve funkčních voláních, v okamžicích, kdy se vytvoří jedna nebo druhá část stránky. Před přijetím takového směru vývoje nebrání tomu, aby všechno dobře váželo.

rozmístěné na mysli

vývojáři myslet na všechny prvky stránky na všech akcích a mají jasnou prezentaci o tom, jak to vlastně děje. Je to obtížné, ale tato práce stojí za to.
[img] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_128.jpeg [/img]
v JavaScriptu výkon funkce může být odložen na jakoukoli událost a takové funkce mohou být mnohé a události mají majetek šířit a spadat do "rozsahu" různých zpracovatelů.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_769.jpeg [/palec]
V tomto Příklad funkce nazvané inicializace položky navigačního souboru byla volána někde dříve. Je plánováno uspořádání stránky, tedy v okně pouze sedmsoubory, které lze odstranit a zpracovat. Můžete se pohybovat buď kliknutím na řádek souboru, stejně jako šipkami na klávesnici a bloky se sedmi řádky. Každý případ má své vlastní funkce. Jinými slovy, v tomto jednoduchém příkladu psát několik desítek funkcí, které budou reagovat na různé akce, a některé z těchto funkcí bude fungovat různé možnosti a situace, které události se nevztahují.
[img] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_9210.jpeg [/img]
Například, když jsou odstraněny, dolní čáry by se měly pohybovat nahoru. K tomu, aby se nový výběr, který banální a prostorný zdroje nebo přenosu linky pomocí polí javascript funkce a elegantní věci udělat.

Argumenty a výsledky funkcí

javascript umožňuje přenést kód do "plně funkčního" stavu. Obvykle je funkce funkce funkční. Volba je povolena, když funkce vrátí funkci. javascript ji zachází absolutně klidně. Je to dobrý mechanismus, ale spíše komplikovaný při jeho realizaci. Z technického hlediska je přípustné, sémanticky bezpečný přenos logiky „funkční“ pouze kvalifikovaný vývojář.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_1411.jpeg [/palec]
Když se javascript funkce funkce - Dobře, ale pokud je funkce generování funkcí, a další, pak vysledovat logika je obtížné. Ve skutečnosti není otázkou uplatnění kvalifikace, otázkou je získat bezpečný a správný výsledek. Obavy developera jsou jasné a jednoduché. Existuje úkol, který potřebujeteřešení, ne chyba jako "javascript chyba operace je nezabezpečená", čistá obrazovka nebo zastávka celého prohlížeče motoru. Pokud argument je funkcí, pak vývojář předá proměnnou se speciálními vlastnostmi, to znamená, že to není číslo, nikoliv řetězec, nikoliv objekt. Použití takového argumentu však může vést ke změně vnějších proměnných a bude výsledkem funkce. V závislosti na tom, že přenesené budou přiměřené změny.

Implementace generovaného kódu

Implementace kódu generovaného během provozu jiného kódu může být provedena pomocí "eval". To se nepovažuje za vynikající řešení, ale často nemůžete komplikovat kód s nepotřebnými funkcemi, ale omezit se na banální formování javascriptové kódové linie a jednoduše ji provést.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_8212.jpeg [/palec]
V tomto Například vložená čára je vytvořena jako aktuální, viz některé informace. Telefonem a Maid of the obsah se liší pro různé polohy, takže řešením v této situaci je zaručeno, aby zajistily situace «javascript chyba operace je nejistá», ale rozhodně dát požadovaný efekt.
[palec] http://hi-news.pp.ua/uploads/posts/2017-04/javascript-funkcya-do-funkcyi-mova-programuvannya-js_8513.jpeg [/palec]
(33 ) Nuances javascript paradigm "funkce k funkci"
Pokud je možné udělat bez ozdůbek, je lepší jej použít. Všechny tyto možnosti jsou dobré. Samozřejmě, v mnoha případech je to jediné řešení. Klasický příklad rekurze: výpočet faktoriálu. Je velmi obtížné napsat algoritmus, který je mezera, ale je velmi snadné překročit hodnotu. Factorial roste velmi rychle. Nicméně arekurze a funkce, která způsobuje jinou funkci, která může provést rozumné zpětné volání - norma věcí. Například pravidelné tabulky. Tabulka může obsahovat další tabulky. Příloha nemůže být omezena. Napište pro každou tabulku vlastní sadu funkcí - příliš mnoho luxusu. Existuje mnoho příkladů těchto příkladů a všechny tyto skutečnosti budou skutečné a naléhavé úkoly, nikoliv z oblasti programování. To je důvod, proč problém spočívá v tom, že bez excesů to nemůže udělat, systém funkcí je vytvořen, přesněji jeho ladění a další spolehlivá práce se stává starostí nejen pro javascript, ale pro vývojáře.

Související publikace