DatamaskinerProgrammering

Javascript loops: for, mens, gjør-mens

Historien om dannelsen av moderne programmeringsspråk syntaks er lik prosessen med kunnskap om universet. Og at det var i begynnelsen ... Men nå er alt enkelt og rimelig.

Algoritmen til slutt - alltid en seriekobling av kommandoer. Parallellitet i programmering - sett en gang den kombinerte sekvenser. Round robin var aldri praktisk til serie- eller parallellkommandokjeden. Etiketter, overganger og vilkår - akkurat nok til noen løsning. Funksjonelle språk har fratatt betydningen av disse ideene, men nødvendigheten av å gjenta deler av koden forble.

Nettleser: DOM, tungen + serveren

Javascript-sykluser fortsatt, selv om funksjonelle ideer kjøpt spesiell betydning. Kanskje noe som er igjen av "Lisp" og "Prologue", men mest av alt, området der Javascript lever, førte til det faktum at det er, men det er tvilsomt at denne siste avgjørelsen.

Javascript kjører i en nettleser som får siden, analyserer den til en DOM og lanserer det første manuset. Alle andre sider, inkludert ned på dette - det er utvikleren av hender manipulere språket der koden på serveren og få resultatene med AJAX mekanisme kan påberopes.

Nettleseren utfører finne Javascript-kode som kan bruke objektene i nettleseren, inkludert den som overfører data til serveren og motta et svar, som kan fungere som en HTML-markup og stiler, og selve koden. Responsen kan bli representert matriser og gjenstander. Fornuftig å bruke en Javascript tapt sykluser, muligheter florerer å gjøre uten dem, og risikere at leseren skal henge en uendelig sekvens av kommandoer er ikke den beste løsningen.

Egentlig sløyfer er til stede i de fleste av Javascript syntaks den, kan utviklere utfylle standard design sine egne funksjoner.

Javascript-kode posisjon i verdensrommet

Moderne programmerer ikke selv tror at han brukte en syklus (for, while, gjør The stund ...) - til slutt en rekke sykluser (sykluser) prosessor, en enkel sekvens av binære operasjoner, avbrutte kassedisker, dvs. forhold.

Som sådan, er syklusen ikke på nivå med maskinen språk: er en kombinasjon av de vanlige kommandoer, betingede drift og konverteringer. Nivå opp, uansett hva midler kan brukes til utvikling av nettleseren og Javascript Interpreter, vil sykluser være unik. Og "deler av koden" vil bli presentert i ulike tider og ulike generasjoner av programmerere. I etasjen over er "å bygge» Javascript. Syntaksen som tilbyr moderne Javascript sykluser.

JS - vakkert språk: praktiske, moderne og fullfunksjons. Syntaksen til dette instrumentet inkluderer alle konstruksjoner som har bestått testen av tid og bli grunnlaget for enhver algoritme uforanderlige. Men fordi sykluser hvis nødvendig, egentlig? Fremgang i programmering ofte spurt meg selv spørsmål av prinsipiell karakter, men bare i noen tilfeller finne løsningen.

saklig grunn

Syklusen kan være bare to varianter av tilstanden eller til telleren, men i virkeligheten (på det laveste nivå) en hvilken som helst syklus - bare ved hypotese. I noen språk vanlig syklus "for hver". I Javascript representert sykluser foreach-struktur prop i objekt, men det er mulig å anvende en variant array.forEach (...).

I alle fall to alternativer: maskinen koden som utføres til slutt alle programmeringsalgoritmer, selv skriver på tolke språk, har ingen andre kommandokjeden gjenta alternativer: han kan ha noe å utføre igjen før:

  • teller teller;
  • inntil tilstanden er oppfylt.

Java - en typisk tolk. Dens karakteristiske trekk: det fungerer i nettleseren bruker sine gjenstander og lar deg utføre algoritmer på klientsiden som siden lastes i nettleseren, og i løpet av sitt arbeid.

Enkelt sykle i hver

På Javascript foreach løkkene ligne bruk av array funksjoner:

Bruken av slike sykluser ikke forårsaker vanskeligheter. Formelt er det ingen faktiske syklus. Det er en konsistent behandling funksjon til elementene i matrisen.

Syklus over disk

Mer vant til å se på Javascript-sykluser for:

Her utfører tellervariabelen hvis verdi varierer i henhold til formelen og skiltet er slutten av syklusen tilstand. Ikke nødvendigvis til formelen og tilstanden innbefatter en variabel syklus. Men kontroll av endepunktet i syklusen er fullstendig bestemt av deres innhold.

betingede sløyfer

Alternativ med mens Java tilbyr, avhengig av når du trenger å sjekke tilstanden. Hvis kroppen av loopen ikke kan utføres enda en gang - denne, hvis kroppen skal utføres minst en gang, er det noe annet:

I det første tilfellet, tolke design stund, Javascript sjekker første tilstanden, og hvis det er sant, utfører loop. I det andre tilfellet vil syklusen utføres først. Dersom resultatet av de variable som er angitt i de angitte konstruksjoner gjør stund, vil det ta en falsk verdi, slutter sløyfen.

Massive kombinasjoner av enkle algoritmer

Den viktigste oppgaven (del) av alle algoritme - å finne, og bare da ta en beslutning om hva de skal gjøre videre. Den mest primitive søk alternativet - en appell til en variabel, er resultatet umiddelbart. Hvis variablene er mange, og den har mange verdier (array), deretter prøveverdiene må finnes som vil avgjøre fremtidig atferd av skriptet.

Denne enkle læren laget en loop med en teller i Javascript slags universalmiddel for alle problemer. Moderne datamaskiner forskjellig hastighet. Tid for å kjøre skript i nettleseren nok, det er ingen hast. Det er lett å sortere ut noe for noe. Som et resultat, J avascript etter looper har blitt svært populære.

Galt med denne typen ingenting. Men bak denne tilnærmingen er lett å miste essensen som den skrift en eller annen algoritme. Disse er ikke meningsløst. Alt det som er skrevet, alle programmer som er fornuftig. Dreven spising på J avascript sykluser for, kan utvikleren ikke se essensen av retten og ikke å skape en tilstrekkelig algoritme.

Funksjonalitet, en annen representasjon av virkeligheten

однотипного кода можно представить функциями - алгоритм сразу преобразится, основное тело скрипта уменьшится в размере, все станет читаемым и понятным. Ved hjelp av Javascript-sykluser, kan eksempler på den samme type kode representerer funksjoner - algoritmen Straks de er transformert hoveddelen av skriptet redusert i størrelse, vil alle være lesbart og forståelig.

Dette er ikke en radikalt ny løsning, men i hovedsak er det ikke utenfor rammen av andre språkkonstruksjoner. Spesielt kan J avascript sykluser bli funnet i klassisk split () -funksjonen:

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

Det er ingen syklus, men ellers utført denne funksjonen, om ikke ved å se etter symbolet '' og bruke den til å skille ett nummer fra en annen.

Abstrahere fra hvordan det er implementert i split () -funksjonen kan suppleres med Javascript-funksjonalitet ved hjelp av sykluser i forhold til bruk - mer praktisk. Det er viktig at en slik tilnærming fører til utvikling av funksjonalitet for hver oppgave, henholdsvis, men den totale fortsatt å være i denne tilnærmingen.

Disse funksjonene allt (), padc (), PADI () og padr () - hva finnes ikke i Javascript, men det er noen ganger nødvendig å fjerne fra en streng eller mellomrom for å justere lengden på strengen til venstre, høyre eller begge sider. Liket av disse funksjonene - Javascript-sykluser. Enkelt, tilgjengelig og aldri henge algoritme som bruker det.

Utførelsesformer tallkonverteringsfunksjoner av 16-ary 10-th beregning og tilbake system, er det lettere å fortelle data fra ett format til et annet, som dannes her av en gjør mens sykluser. Svært kompakt og effektiv syntaks.

Riktig sykluser - representasjon av virkeligheten

Javascript - ikke som andre programmeringsspråk og ulike utvalg av versjoner, og viktigst, har en tendens til ikke å endre syntaksen, og å utvikle og utvide den.

Programmerer tenkte anvendelse av JS, skiller den seg fra PHP-programmerer tenkning (i særdeleshet, og andre språk totalt, brønn, bortsett fra at "Prolog" og hans etterfølgere ikke er inkludert i den generelle retningen), når algoritmen er ikke begrenset til variabler, matriser, tilordning operatører, cykliske strukturer .

Hvis vi tenker oss at det ikke er noen sykluser, og løse problemet, er det nødvendig, det enkleste alternativet (blindfold) - tyder på at programmet behandler data, som er et punkt eller poengsystem i informasjonsrommet. Hva er poenget og hva poengsystem - er det et bestemt emne eller område. For programmerer, betyr denne avhandlingen: en enkel, dette er et sett av enkle data. Naturligvis vil denne enkle ett nivå til et nivå under systemet være, men for høyere nivå - punkt.

Med denne tilnærmingen, poenget med omsorg - for å vise sin identitet gjennom sine metoder. Når punkt i super-system, funksjon av systemet - for å vise sin essens som en kombinasjon av enheter som tilhører hennes poeng.

Denne tilnærmingen er like gammel som ideen om programmeringsspråk, men har fortsatt ikke funnet sin tilstrekkelig refleksjon i programmering. Mange programmerere tror riktig, men resultatet av deres arbeid går mye å være ønsket.

Det er nyttig noen ganger å gå med bandasje over øynene for å se verden!

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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