Povijest formiranja moderne sintakse programskog jezika srodna je poznavanju procesa formiranja Svemira. Što je i kako bilo u početku ... Ali sada je sve jednostavno i dostupno.
Algoritam je u konačnici uvijeksekvencijalni lanac naredbi. Paralelizam u programiranju skup je nekako kombiniranih sekvenci. Algoritam petlje nikada nije bio praktičniji od serijskog ili paralelnog lanca naredbi. Oznake, prijelazi i uvjeti bili su dovoljni za svako rješenje. Funkcionalni jezici lišili su ove ideje značaja, ali potreba za ponavljanjem odjeljaka koda i dalje je ostala.
Preglednik: DOM, njegov jezik + poslužitelj
U JavaScriptu petlje ostaju, iako funkcionalneideje su poprimile posebno značenje. Možda je ostalo nekoliko ostataka iz Lispa i Prologa, ali najvjerojatnije je područje u kojem živi JavaScript dovelo do toga što jest, no dvojbeno je da je ovo posljednje rješenje.
JavaScript se pokreće unutar preglednika kojidobiva stranicu, raščlanjuje je u DOM i pokreće prvu skriptu. Sve ostale stranice, uključujući one učitane na ovoj, djelo su programera koji manipulira jezikom putem kojeg se može pozvati kôd na poslužitelju i rezultat dobiven pomoću AJAX mehanizma.
Preglednik izvršava JavaScript kôd koji možekoristiti objekte preglednika, uključujući onaj koji omogućuje prijenos podataka na poslužitelj i primanje odgovora, što može biti i HTML oznaka i stilovi i stvarni kôd. Odgovor se može predstaviti nizovima i objektima. Smisao upotrebe petlji u JavaScriptu je izgubljen, postoji puno prilika za raditi bez njih, a riskiranje vješanja preglednika s nepreglednim nizom naredbi nije najbolje rješenje.
Loops su prisutni u većini sintaksičkih konstrukcija JavaScript-a; programer može dopuniti standardne konstrukcije vlastitim funkcijama.
Pozicioniranje JavaScript-a u prostoru koda
Suvremeni programer to ni ne pomišljapetlja koju koristi (za, while, do while, ...) u konačnici je niz ciklusa takta procesora (ciklusa), jednostavan slijed binarnih operacija prekinut provjerama brojača, odnosno uvjetima.
Kao takav, nema petlje na razini strojnog jezika:kombinacija je uobičajenih naredbi, uvjetnih operacija i skokova. Jednu razinu više, koji god se alat koristi za razvoj preglednika i JavaScript interpretatora, petlje će biti jednoznačne. Štoviše, "dijelovi koda" bit će predstavljeni u različito vrijeme i od različitih generacija programera. Jedan kat gore je JavaScript zgrada. Sintaksa koja nudi moderne JavaScript petlje.
JS je sjajan jezik:praktičan, moderan i potpuno funkcionalan. Sintaksa ovog alata uključuje sve konstrukcije koje su prošle test vremena i postale su nepokolebljivi temelj bilo kojeg algoritma. No, jesu li petlje stvarno potrebne? Napredak u programiranju često si je postavljao osnovna pitanja, ali samo je u nekoliko slučajeva pronašao rješenje.
Objektivne osnove
Ciklus može imati samo dvije mogućnosti:uvjetom ili brojačem, ali u osnovi (na najnižoj razini) bilo koja petlja je samo uvjetna. U nekim jezicima postoji ciklus "za svakoga". U JavaScript-u petlje foreach predstavljene su potporom u konstrukciji objekta, ali možete koristiti varijantu array.forEach (...).
U svakom slučaju postoje dvije mogućnosti:strojni kôd koji u konačnici izvršava sve algoritme programera, čak i one koji pišu na interpretativnim jezicima, nema druge mogućnosti za ponavljanje lanca naredbi: može ponovno izvršiti nešto dok:
- broji se brojač;
- sve dok je uvjet ispunjen.
JavaScript je tipičan tumač.Njegova je osobitost: funkcionira unutar preglednika, koristi svoje objekte i omogućuje izvršavanje algoritama na klijentskoj strani, kako kada se stranica učita u preglednik, tako i tijekom njegovog rada.
Jednostavna petlja za svakoga
U JavaScriptu petlje foreach izgledaju poput primjene funkcije na niz:
Korištenje takvih petlji je jednostavno. Formalno, ne postoji ciklus kao takav. Postoji sekvencijalni poziv funkcije elementima niza.
Brojač ciklusa
Jer petlje izgledaju poznatije u JavaScript-u:
Ovdje je brojač varijabla, vrijednostkoja se mijenja prema formuli, a kraj ciklusa označava uvjet. Formula i uvjet ne moraju sadržavati varijablu petlje. No, kontrola nad krajem ciklusa u potpunosti je određena njihovim sadržajem.
Uvjetne petlje
Opcija while JavaScript predlaže uovisno o tome kada želite provjeriti stanje. Ako se tijelo ciklusa ne može izvršiti niti jednom, jedno je, ako tijelo mora biti izvedeno barem jednom, ovo je drugačije:
U prvom slučaju, tumačeći gradnju while,JavaScript prvo provjerava stanje, a ako je istina, petlja se. U drugom slučaju, ciklus će se prvo izvršiti. Ako kao rezultat promjene varijabli specificiranih u stanju konstrukcije učiniti dok će biti lažno i petlja će se prestati izvršavati.
Masivne kombinacije jednostavnih algoritama
Glavni zadatak (sastavni dio) bilo kojegalgoritam - pronaći, tek onda donijeti odluku što dalje. Najprimitivnija opcija pretraživanja je pristup varijabli, a rezultat se dobiva izravno. Ako postoji mnogo varijabli ili ima mnogo vrijednosti (niz), da biste odabrali vrijednost, trebate pronaći nešto što će odrediti daljnje ponašanje skripte.
Tako jednostavna doktrina petlja s brojačem u JavaScript-u je vrstalijek za sve zadatke. Moderna računala su brza. Ima dovoljno vremena za izvršavanje skripti u pregledniku, ne žuri se. Lakše je nego ikad riješiti nešto zbog nečega. Kao rezultat, na JavaScript za petlje postali su vrlo popularni.
Čini se da u tome nema ništa loše. No, iza takvog pristupa lako se gubi bit za koju je napisan ovaj ili onaj algoritam. Podaci nikad nisu besmisleni. Sve za što je napisan bilo koji program ima smisla. Pije previše JavaScript za petlje, programer možda neće vidjeti željeni entitet i neće stvoriti odgovarajući algoritam.
Funkcionalnost, drugačiji prikaz stvarnosti
Prijavom Primjeri JavaScript petlje iste vrste koda mogu biti predstavljene funkcijama - algoritam će se odmah transformirati, glavni dio skripte smanjit će se u veličini, sve će postati čitljivo i razumljivo.
Ovo nije radikalno novo rješenje, ali u biti ne nadilazi druge jezične konstrukcije. Konkretno, JPetlje avaScript mogu se naći u klasičnoj funkciji split ():
var cRezultat = "9,8,7,6,5,4";
var rezultat = cRezultat.podjela(",");
Ovdje nema petlje, ali kako se inače ova funkcija izvršava ako ne tražeći znak "," i koristeći ga za odvajanje jednog broja od drugog.
Apstrahirajući se od načina na koji se interno provodifunkcije split (), JavaScript se može nadopuniti vlastitom funkcionalnošću koja koristi petlje, s gledišta upotrebe - praktičnija. Bitno je da ovaj pristup vodi razvoju funkcionalnosti za svaki zadatak, ali općenito će i dalje biti s ovim pristupom.
Te su funkcije allt (), padc (), padl () i padr ()što nije u JavaScript-u, ali ponekad trebate ukloniti razmake iz niza ili poravnati duljinu niza lijevo, desno ili obje strane. Tijelo ovih funkcija sadrži JavaScript petlje. Jednostavno, povoljno i nikada neće zamrznuti algoritam pomoću njega.
Opcije za pretvorbu brojeva izHeksadecimalni prema 10. brojevnom sustavu i obrnuto, lakše je reći, iz jednog formata podataka u drugi, ovdje se izvode pomoću petlje do while. Vrlo kompaktna i učinkovita sintaksa jezika.
Ispravni ciklusi - prikazivanje stvarnosti
JavaScript se ne podudara s drugim programskim jezicima i ne razlikuje se u raznim verzijama, i što je najvažnije, nastoji ne promijeniti sintaksu, već je razviti i proširiti.
Način razmišljanja JS programera je drugačiji iz razmišljanja PHP programera (posebno, i svih ostalih jezika u cjelini, dobro, osim što "Prolog" i njegovi sljedbenici nisu uključeni u mainstream), kada algoritam nije ograničen na varijable, nizove, operatore dodjele, petlje konstrukcije.
Ako zamislimo da nema ciklusa, a problem je riješenpotrebno je, tada je najjednostavnija opcija (povez preko očiju) pretpostaviti da program obrađuje podatke koji su točka ili sustav točaka u informacijskom prostoru. Što je točka, a što sustav bodova, stvar je određenog predmetnog područja. Za programera ova teza znači: postoje jednostavni podaci i postoji zbirka jednostavnih podataka. Prirodno, jednostavni datum jedne razine za donju razinu bit će sustav, a za razinu iznad točka.
Ovim pristupom glavna je stvar pokazati svoju bit kroz svoje metode. Kada je točka u nadsistemu, tada je funkcija sustava da svoju suštinu očituje kao skup entiteta točaka koje su u njoj uključene.
Ovaj je pristup star koliko i ideja o jezicimaprogramiranje, ali još uvijek nije pronašao svoj odgovarajući odraz u programiranju. Mnogi programeri misle ispravno, ali rezultat njihove kreativnosti ostavlja mnogo željenog.
Korisno je ponekad nositi povez preko očiju da biste vidjeli svijet!