RačunariProgramiranje

JavaScript petlje: za, dok, dok-dok

Istorija formiranja moderne sintakse programskog jezika slična je poznavanju procesa formiranja univerzuma. Šta i kako je bilo na početku ... Ali sada je sve jednostavno i pristupačno.

Algoritam na kraju - uvek konzistentan lanac komandi. Paralelizam u programiranju je skup nekako kombinovanih sekvenci. Ciklični algoritam nikada nije bio praktičniji od sekvencijalnog ili paralelnog lanca komandi. Oznake, prelaz i uslovi - sve je bilo dovoljno za svaku odluku. Funkcionalni jezici su lišili ovih ideja od značaja, ali je potreba za ponavljanjem kodskih sekcija ostala.

Pretraživač: DOM, njegov jezik + server

JavaScript ciklusi su ostali, iako su funkcionalne ideje stekle posebno značenje. Možda postoji nešto što je ostalo od Lisp-a i Prolog-a, ali najverovatnije područje u kojem se nalazi JavaScript je dovelo do onoga što postoji, ali je sumnjivo da je ovo poslednja odluka.

JavaScript radi unutar pretraživača, koji dobija stranicu, razrađuje ga u DOM-u i pokreće prvu skriptu. Sve druge stranice, uključujući i one koje su učitane na ovom, predstavljaju rukopise programera koji manipulišu jezikom preko kojeg se može pozvati kôd na serveru, a rezultat se dobija pomoću AJAX mehanizma.

Browser izvršava JavaScript kod koji može koristiti objekte pretraživača, uključujući i one koji pružaju informacije serveru i primaju odgovor, koji može uključiti HTML oznaku, stilove i kod sebe. Odgovor može biti predstavljen nizovima i objektima. Osjećaj korištenja JavaScript-a je izgubljen u JavaScript-u, postoji puno načina bez njih, a rizik za visi pregledač sa beskonačnim nizom komandi nije najbolje rješenje.

Stvarni ciklusi su prisutni u većini JavaScript sintaksnih konstrukcija, programer može dopuniti standardne konstrukcije svojim vlastitim funkcijama.

Pozicija JavaScript-a u prostoru koda

Moderni programer čak i ne pomišlja da ciklus koji koristi (za, dok, dok, ...) na kraju je serija ciklusa (ciklusa) procesora, jednostavna sekvenca binarnih operacija, prekidana proverama brojača, odnosno uslova.

Kao takav, na nivou jezika mašine nema ciklusa: postoji kombinacija običnih komandi, uslovnih operacija i prelazaka. Viši nivo, bilo koji alat se koristi za razvoj pretraživača i JavaScript-a, petlje će biti nedvosmislene. A "delovi koda" će biti predstavljeni različitim vremenima i različitim generacijama programera. Jedno iznad je "izgradnja" JavaScript-a. Sintaksa koja nudi moderne JavaScript cikle.

JS - odličan jezik: praktičan, moderan i potpuno opremljen. Sintaksa ovog alata uključuje sve konstrukcije koje su prošle test vremena i postale su nepopravljivi temelji bilo kojeg algoritma. Ali da li su ciklusi zaista neophodni? Napredak u programiranju često se postavljao pitanjima od fundamentalne prirode, ali samo u nekim slučajevima našla rješenje.

Objektivni osnovi

Ciklus može biti samo dve varijante: uslovom ili brojačem, ali u stvari (na najnižem nivou) bilo koji ciklus je samo uslovno. Na nekim jezicima, dolazi do ciklusa "za svako". U JavaScript-u, foreach-ove petlje predstavljaju opseg objekta, ali možete koristiti opciju array.forEach (...).

U svakom slučaju, postoje dve opcije: mašinski kod, koji na kraju izvršava sve algoritme programera, čak i pisanje na jeziku tumačenja, nema druge opcije za ponavljanje lanca komandi: može ponovo uraditi sve dok:

  • Brojač računa;
  • Dok se stanje ne zadovoljava.

JavaScript je tipičan tumač. Njena karakteristika: ona funkcioniše unutar pretraživača, koristi svoje objekte i dozvoljava izvršavanje algoritama na strani klijenta, kako kada se stranica učita u pretraživač, tako iu postupku njegovog rada.

Jednostavan ciklus za sve

U JavaScriptu, prednje petlje izgledaju kao aplikacija u nizu funkcija:

Korišćenje takvih ciklusa ne uzrokuje poteškoće. Formalno, ne postoji takav ciklus. Postoji konzistentan poziv funkcije na elemente polja.

Kontrolni ciklus

Više poznatiji pogled na JavaScript za:

Ovde brojač je varijabla čija vrijednost varira u skladu s formulom, a znak krajnjeg ciklusa je stanje. Nije neophodno da formula i stanje uključuju varijablu petlje. Ali kontrola na kraju ciklusa je u potpunosti određena njihovim sadržajem.

Uslovne petlje

Opcija sa uslugom JavaScript, u zavisnosti od toga kada je potrebno provjeriti stanje. Ako se telo ciklusa ne može izvršiti jednom - ovo je jedno ako telo mora biti izvršeno bar jednom, ovo je drugo:

U prvom slučaju, dok tumači konstrukciju, JavaScript prvo proverava stanje, a ako je tačno, izvršava petlju. U drugom slučaju, prvi ciklus će se izvršiti. Ako, kao rezultat promene promenljivih specificiranih u stanju izvršavanja dok konstruiramo , uzima lažnu vrijednost, petlja će prestati izvršavati.

Masivne kombinacije jednostavnih algoritama

Glavni zadatak (komponenta) bilo kog algoritma je pronalaženje, tek onda odlučiti šta dalje raditi. Najprimitivnija verzija pretrage je pristup promenljivoj, rezultat se dobija direktno. Ako ima mnogo varijabli ili ima mnogo vrijednosti (niz), tada pronaći vrijednost koju trebate pronaći za nešto što će odrediti dalje ponašanje skripte.

Takva jednostavna doktrina napravila je ciklus sa šalterom na JavaScript jeziku neku vrstu panacee za sve zadatke. Savremeni računari su brzi. Ima dovoljno vremena za izvršavanje skripti u pretraživaču, nema požuda. Jednostavnije je nešto prevazići. Kao rezultat, J avaScript, za petlje su postali veoma popularni.

Ovde nema ništa loše. Ali iza takvog pristupa, suština za koju je napisan jedan ili drugi algoritam lako se gubi. Podaci nisu besmisleni. Sve za koje je program napisan, ima smisla. Prekomerno koristeći J avaScript za petlje, programer ne može videti potreban entitet i stvoriti adekvatan algoritam.

Funkcionalnost, još jedna reprezentacija realnosti

однотипного кода можно представить функциями - алгоритм сразу преобразится, основное тело скрипта уменьшится в размере, все станет читаемым и понятным. Korišćenjem JavaScript-ciklusa, primjeri istog koda mogu biti predstavljeni funkcijama - algoritam će se odmah promijeniti, glavno tijelo skripte će se smanjiti u veličini, sve će postati čitljivo i razumljivo.

Ovo nije kardinalno novo rješenje, ali u suštini ne ide preko okvira drugih jezičkih konstrukcija. Konkretno, J avaScript petlje se može naći u klasičnoj split () funkciji:

cResult = '9,8,7,6,5,4' ; Var cResult = '9,8,7,6,5,4' ;
aResult = cResult . Var aResult = cResult . ( ',' ); Split ( ',' );

Tu nema nikakve petlje, ali kako drugačije se radi ova funkcija, ako ne i traženje karaktera ',' i koristite ga za odvajanje jednog broja od drugog.

Apstrahujući kako se ovo implementira unutar funkcije split (), možete dopuniti JavaScript sa svojom funkcionalnošću koja koristi petlje, sa stanovišta korištenja - pogodnije. Značajno je da takav pristup dovodi do razvoja funkcionalnosti za svaki problem, ali general će i dalje biti sa ovim pristupom.

Ove funkcije allt (), padc (), padl () i padr () su stvari koje nisu u JavaScriptu, ali ponekad morate ukloniti razmake iz stringa ili poravnati dužinu niza na lijevo, desno ili obe strane. U tijelu ovih funkcija su JavaScript-ciklusi. Jednostavan, pristupačan i nikad ne visi algoritam pomoću ovoga.

Varijante funkcija pretvaranja brojeva iz heksadecimalnog u 10. sistem računala i obrnuto, lakše je reći, iz jednog oblika podataka u drugi, ovdje se vrši ciklusi do-dok. Veoma kompaktna i efikasna sintaksa jezika.

Pravi ciklusi su predstavljanje stvarnosti

JavaScript nije par drugih programskih jezika i ne razlikuje se u različitim verzijama, a što je najvažnije, pokušava da ne menja sintaksu, već da ga razvija i proširuje.

Razmišljanje programera koji koristi JS razlikuje se od razmišljanja PHP programera (naročito, drugi jezici u celini, osim što "Prolog" i njegovi sledbenici ne ulaze u zajednički kanal), kada algoritam nije ograničen na varijable, nizove, operatere dodjele, cikličke konstrukcije .

Ako zamislite da nema ciklusa i morate riješiti problem, onda je najjednostavnija opcija (povez u oči) pretpostaviti da program obrađuje podatke koji su tačka ili sistem tačaka u informacionom prostoru. Koja je tačka i koji je tačkasti sistem stvar određene predmetne oblasti. Za programera, ova teza znači: postoji jednostavno dato i postoji skup jednostavnih podataka. Naravno, jednostavno dato jedan nivo za nivo ispod biće sistem, a za nivo iznad tačke.

Ovim pristupom, briga o tački je da manifestuje svoju suštinu putem sopstvenih metoda. Kada je tačka u supsistemu, funkcija sistema je da izrazi svoju suštinu kao zbir entiteta tačaka koji ulaze u nju.

Ovaj pristup je star, poput ideje o programskim jezicima, ali još nije pronašao adekvatan odraz u programiranju. Mnogi programeri razmišljaju ispravno, ali rezultat njihove kreativnosti ostavlja mnogo želja.

Ponekad je korisno staviti zavoj preko očiju kako biste videli svet!

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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