RačunalaProgramiranje

JavaScript: funkcija funkcije. Programski jezik JS

Ideje dinamičkog sadržaja na stvaraju web-resursi su postali norma. Statičke stranice i predloške Web dizajn konačno završili svoju misiju.

Međutim, moderna web-resurs ne mora da bude predstavljena nizom stranica generira server i osvježite preglednik (JS + AJAX).

Web-based spremišta u trenutku dolaska posjetitelj može biti nekoliko naslova za zapisnik, neki tekst u «glavu», nekoliko linija koda u «tijela» i sve. Ostatak "zamisliti" u procesu posjetitelja - to je vrlo dobroj lokaciji, ili teži da bude jedan.

Postavite opis i prirodu funkcija

опыт, наработаный многими десятилетиями. JavaScript - to je iskustvo narabotany desetljeća. To ima značajan istoriju razvoja, moderan kvalitetan tim kreatora programera. Jezik dobro promišljen, pouzdan, lijep i daje prava prilika za programere da pišu kod za pristojan i samo-poboljšanje.

Koncept algoritam je funkcija ovdje ne postoji u načelu. Naravno, programer može bilo gdje na stranici za umetanje skripti da stavi u njega i da će biti pogubljeni. страницы? Ali ono što je poenta u kodu, koji se izvodi samo jednom: kada se od (pretovar) stranice? Da li je moguće postaviti početne vrijednosti ono što neki beznačajni varijable.

Skripta - ovo mjesto je pravi opis varijabli i funkcija, a ne dobar komad kod napisan za svoje dobro. To je skup funkcija je bitno i važno, možda - njihova međusobna direktnu vezu, ali češće je to drugačije. Mjesto opis funkcije i mjesto njegove primjene nije ista stvar.

Nije potrebno da će funkcija izravno pozove drugu funkciju, ali to može biti učinjeno indirektno kroz formiranje dinamičkih koda. Posjetitelj donosi odluku u roku od ovaj kod i radi sasvim različite funkcije sistema.

funkcionalne dinamika

Funkcionalna dinamika - je ne samo i ne toliko sirovina dobio elemente stranice su funkcije koje čine elemente stranice, a neposredne viljuškari, takođe, može promijeniti.

Radnja se odvija na stranici, ovisno o elementima i ponašanje posjetitelja na njemu. Pokret miša, tipkovnica, tipke, klikova, događaje, predmete i druge okolnosti dovode do lansiranja potrebne funkcije.

Originalno nema dosljednosti i ne postoji paralelno. Postoji adekvatan odgovor na događaje web-resursa. Koliko brzo JavaScript ispunjava određenu funkciju to ovisi o mnogim tehničkim (kompjuter, komunikacijske linije) i semantička (logika algoritam, uz područje, što znači da je problem) faktora.

U stvari, može se tvrditi da se nešto radi paralelno, ali nešto će se nakon nešto, ali značenje ove specijalne nije. Važno je da funkcija JavaScript - to je prilika da se stvori adekvatan odgovor na postupke posjetitelja.

Ova nova razmišljanja u dizajnu: distribuiranu obradu u dubinama jedan browser!

Sintaksa za varijable i funkcije

JavaScript-varijable su smješteni u oznaci «skriptu», au tijelo funkcije. Funkcije su definirane na isti način. Posebno značenje za pisanje unutar funkcije ima drugu funkciju, ali možda će biti potrebno zbog različitih razloga, a to je sasvim razumno.

Opis funkcije obično počinje s ključnom riječi «funkcija», zatim ime, lista argumenata u zagradi, odvojene zarezima, a tijelo funkcije u protezu.

U ovom primjeru, dvije funkcije su opisane koje pružaju AJAX razmjene između stranice i servera. Djelomično scXHR je gore opisano, jer na raspolaganju u oba InitXML, i unutar WaitReplySC.

Ime funkcije i parametar "funkcija"

Tu je predstavio asinkroni verzija kada je funkcija JavaScript-funkciju koja se zove nakon odgovora servera. Tako je primio odgovor od servera, WaitReplySC pristupa oznaku stranice, ispunjava primljene informacije i izaziva druge funkcije, što može i pokrenuti sljedeći zahtjev na server.

Ovdje je važno napomenuti da WaitReplySC - funkcije. scXHR.onreadystatechange = WaitReplySC она передается как параметр. Ali, u skladu scXHR.onreadystatechange = WaitReplySC je prošlo kao parametar. Ova opšta prijenosna funkcija pravilo na druge funkcije kao parametri. Šiljatim zagradama i im je dala svoj parametar (e) - funkcija će se odmah izvršiti. Naracija samo po imenu, dobro pa šta. Poziva funkcija će onaj koji je dobila ime.

Funkcionalnost implementiran preko AJAX, omogućava vam da pozovete JavaScript funkciju kroz podataka dobijenih sa servera. U stvari, slanje zahtjeva na server, jedno ili drugo funkcija možda nije uopšte "zna" koji funkcioniraju ona okreće, i sa kakvim informacijama.

Funkcija i njegov rezultat

Tijelo funkcije, možete pisati bilo koji jezik operatera, koji je, u stvari, to je namijenjen. Unutar funkcije su varijable deklarisane unutar i izvan, ali ne i one koji su opisani u drugim funkcijama.

Ako želite funkciju da se vrati rezultat, možete koristiti JavaScript povratak izjavu: povratak. Tijelo funkcije može biti dovoljan broj povratka izjava. Nije potrebno da svi oni će se vratiti rezultat istog tipa.

Obično, programeri su poštovani ovu priliku i, u zavisnosti od situacije, odlučiti da se povuče sa funkcije u najkraćem mogućem roku.

To nije potrebno proći kroz cijeli algoritam funkcija, kada se može izaći ranije.

argumenata funkcija

Argumenti su prošli na listu funkcije, odvojene zarezima, su u zagradama, a samo su nakon njeno ime. Argumenti varijabla imena, ali možete direktno proći vrijednosti. Da se donese JavaScript funkciju u funkciju, potrebno je samo da navedete ime bez zagrada.

Unutar funkcija je dostupna varijabla argumente, koji ima svojstvo dužine. Možete se može odnositi na bilo koju funkciju argumenta kroz argumente [0], argumenti [1], ... do posljednjeg argumente [arguments.length-1].

Mijenja funkciju argumenta je stvarno unutar funkcije, ali ne i izvan njega. Da bi se nešto promijeni izvan funkcije, operator mora koristiti JavaScript povratak, kroz koji prolaze potrebne vrijednosti prema van.

Nakon što je funkcija završava, a sve što je povezano s njegove implementacije, će biti uništena. U toku izvođenja funkcije može promijeniti vanjske varijable, osim onih koje su opisane u drugim funkcijama, uključujući i one u unutrašnjosti.

Imamo argumente callee imovine, koja ima za cilj pozvati funkciju koja se izvodi u datom trenutku. Ako sama uzrok, JavaScript verzija funkcije u funkciji će sprovesti rekurzije.

Upotreba funkcija

Glavna briga funkcija - da služi preglednika događaja. Da biste to učinili gotovo svaki citat ima sposobnost da navedete naziv događaja i funkcije njegove proizvodnje. Možete odrediti više događaja, ali svaki događaj ukazuje samo jednu funkciju.

Jedna funkcija može nositi više elemenata stranicu i nekoliko događaja. Kroz «ovo» opciju, možete prenijeti funkciju informacije gdje se zove.

Klasičan korištenje JS-funkcija - događaj viljuškari na elemente. U ovom primjeru scfWecomeGo () funkcija ili scfWelcomeCancel () se zove u ulaz / izlaz oblik posjetitelj, a prilikom odabira načina rada scfMenuItemClick (this).

U drugom slučaju, parametar prošao «ovo», koja vam omogućuje da čudesno naučiti iz onoga što je diva zvao. Zapravo, JavaScript je tako kvalitativno ugrađuju u DOM, a to je tako jednostavno vam omogućava navigaciju njegove elemente, za prikupljanje potrebnih informacija koje stranice dinamika može jednostavno biti nepredvidiva.

Funkcija ne mora da se vrati niz, broj ili drugu funkciju. To može vratiti kompletan HTML elemenata, a koji je potreban broj elemenata, sa svojim viljuškari, svoje događaje.

Postavljanjem element na stranici, programer stvara novi funkcionalnost koja je dobra u smislu rješavanja problema i zadovoljavaju interese posjetitelja, ali prilično teško u smislu implementacije.

S obzirom da je razvoj takvih potpuno funkcionalan, lako izgubiti u rodnom kod, u funkciji poziva, u trenucima kada je formirana i da je sadržaj jedne ili druge strane. Pre donošenja takve pravac razvoja, a ne ometati dobro izvagati sve.

O raspodjeli razmišljanja

Programer mora da misli na nivou svih elemenata stranice, u svakom slučaju, i imaju jasnu prezentaciju kako je sve zapravo događa. Teško je, ali posao je vrijedan toga.

U JavaScript, funkcija može biti odgođen dok neki događaj, i takve funkcije mogu biti puno, i događaji imaju tendenciju da se širi i ući u "sferu vidljivosti" različitih procesora.

U ovom primjeru, negdje prije nego što je na funkciju koja se zove, koja je inicirala stavku navigaciju datoteku izbornika. Pretpostavlja se poziv, koji se nalazi u prozoru samo sedam slika, koja se može ukloniti i obraditi. Može se preselio kao datoteku klikom na red, a tipke sa strelicama i blokove sedam redova.

U svakom slučaju ima svoju funkciju. Drugim riječima, u ovom jednostavnom primjeru, potrebno je napisati nekoliko desetina funkcije koje će reagirati na različite događaje, a neke od tih funkcija će nositi različite opcije i situacija da su se događaji ne pripadaju.

Na primjer, prilikom uklanjanja dna linija mora biti raseljeni na gore. To će zahtijevati ili napraviti novi izbor koji uobičajeno i jasno resurs, ili računati linije, koristite javascript funkciju na niz i za postizanje cilja elegantan.

Argumente i rezultati funkcija

JavaScript vam omogućava da donese kod za status "sa svim funkcijama". Normalno, kada je argument funkcije je funkcija. Dozvoljeno opciju, funkcija vraća funkciju. JavaScript je potrebno prilično mirno.

Ovo je dobar mehanizam, ali prilično komplikovana u vezi primjene. Tehnički dozvoljena semantički pružiti "funkcionalni" logika prijenos samo kvalifikovani developer.

Kada JavaScript funkciju u funkciju - sve u redu, ali kada je funkcija generira funkciju, a da je drugi, logika je prilično teško pratiti. U stvari, pitanje je da li će primijeniti vještine, pitanje je da dobije siguran i ispravan rezultat.

Developer briga je jasan i jednostavan. Postoji problem, potrebno vam je rješenje, a ne bug poput «JavaScript greška je operacija nesiguran» , prazan ekran, ili zaustavi sve motor preglednika.

Ako je argument je funkcija, onda je programer da prođe varijabla sa posebnim svojstvima, to nije broj, a ne niz, a ne objekt. Ali korištenje takav argument može dovesti do toga da promijenite vanjske varijable i rezultat izvršenja funkcije. U zavisnosti od promjene koje će biti adekvatno prenose.

Izvršenje generiranom kodu

Provesti izvršavanje koda nastaje u toku rada drugih koda, moguće je putem «eval». To se ne smatra se da je odlično rješenje, ali često ne mogu zakomplicirati kod nepotrebnim funkcijama, a da ograniči formiranje trivijalnih linija JavaScript koda i jednostavno izvršiti ga.

U ovom primjeru, umetak se formira bodom u operativan div neke informacije. Diva i sadržaj informacije za različit broj različitih položaja, jer je takva odluka u ovoj situaciji ne daje zajamčena situacija «javascript greška operacije je nesiguran» , ali čvrsto dati željeni efekat.

Nuance JavaScript paradigme "funkciju u funkciju"

Ako to možete učiniti bez suvišnih detalja, bolje je da ga koristite. Sve ove opcije su dobre. Naravno, u mnogim slučajevima, to je jedino rješenje.

Klasičan primjer rekurzije: faktorijel. Dovoljno je teško napisati algoritam koji će petlju, ali to je vrlo jednostavno, možete gurnuti vrijednosti kovertu. Faktorijel raste prebrzo.

Međutim, rekurzija, a funkcija poziva drugu funkciju, što može učiniti informirani povratni poziv - normalne stvari.

Na primjer, uobičajene tablice. Za drugim stolom može biti za stolom. Gniježđenje ne može biti ograničena. Pišu za svaki sto svoj set karakteristika - preveliki luksuz.

Takvi primjeri su brojni, a sve to će biti pravi i pritiskom na problem, a ne zbog programa. To je razlog zašto je problem leži u činjenici da bez suvišnih ne uspostavi sistem funkcija, točnije, njegova ispravljanje pogrešaka i kasniji pouzdan rad postaje JavaScript zaštite i Developer.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 bs.birmiss.com. Theme powered by WordPress.