Синтакса ЈаваСцрипт-а пружа могућност комбиновања варијабли у низове и објекте. Приступ елементима се може добити преко индекса и имена, преко оператора петље.

Али није увијек могуће знати број елемената у колекцији у фази пројектовања и није увијек згодно користити синтаксу језика унутар семантике коју пружа.

Класични дизајн

Уобичајена изјава петље "за (вар и = 0; и <аДата.дужина; и ++) {...} "обезбеђује приступ сваком елементу поља помоћу индекса" и "-" аДата [и] ", и то је згодно када је унапред познат број елемената.

вар и = 0;
док {... аДата [И] (типеоф аДата [И] = "недефинисан"!); ... и ++; },

када је број елемената непознат.

ЈС фореацх

Такође можете направити и друге алгоритме за пуњење и обраду поља, али је много погодније користити нове, модерне опције.

Класика је добра када требате обрађивати упитнике(име, презиме, име, патронимиц), картице опреме (модел, произвођач, продавац, датум продаје) и други подаци који се не мењају структурно и представљају укупну камату.

Када је елемент низа сам објекат или структура, он има своја својства и методе, онда класика не може да се носи са динамиком квантитета и квалитета, а низ узима другачије значење.

Циклуси за сваки елемент

У динамици, манифестацијаниз особина тренутног елемента. Дизајн ЈС Еогеасп низ, у нешто другачије од уобичајених (усвојен на другим језицима), верзија, омогућава нам да обезбеди низ прилика да покажу своје имовине до датума свом елементу.

Рецимо да један низ садржи путеве (њиховеквалитативне и квантитативне карактеристике), и још један низ - аутомобили који могу само да путују по одређеним путевима и имају различите запремине резервоара за гориво, то јест, имају и значајне раздаљине између бензинских станица.

У овој варијанти, експедитиван алгоритам би требаоУзмите као основу, на пример, пут и изаберите аутомобиле који их могу возити. И боље је ако се пут и ауто, у програму као предмети, "нађу". Ово је природна примена објектно оријентисаног програмирања, који, између осталог, не доводи до потребе за промјеном алгоритма приликом промјене колекције путева и аутомобила, аутоматски узима у обзир путеве у поправци, возила на одржавању итд.

ЈС фореацх арраи

Технички, на ЈС предикту, структура изгледа веома једноставно: "аДата.форЕацх (фДата);", гдје је фДата функција која се примјењује на сваки елемент арра аДата:

функција фДата (вриједност, индекс) {сТект + = индекс + "=" + вриједност + ";"; }.

Ако су изворни подаци представљени на следећи начин:

вар аДата = [1,2,3,4];
аДата.пусх (11);
аДата.пусх (22);
аДата.пусх (44);
аДата.пусх ("линија 1");
аДата.пусх ("линија 2");

вар сТект = "",

онда ће резултат ове ЈС фореацх пријаве бити:

"0 = 1; 1 = 2; 2 = 3; 3 = 4; 4 = 11; 5 = 22; 6 = 44; 7 = линија 1; 8 = линија 2;".

Карактеристике поља са објектима

Објект у ЈаваСцрипту је посебан. Употреба објеката на овом језику знатно се разликује од имплементација на другим језицима. Објект је низ својстава и метода. У овом случају, последње заправо извршавају радње, чувају или уређују свој или спољни садржај других објеката, низова, варијабли.

Објекти, који долазе у низ, као што су рамови на филму, посматрају ЈС фореацх објектне конструкте, формирају нову семантику: конструкција промењеног смисла.

Значи, сами путеви имају приликуизабрати аутомобил који може возити на њима, а последњи дан се филтрирају доступне путеве. Ако не обраћају пажњу, да је вишак запослених у овој опцији програмском поузданији код, задатак - да се утврди пут испоруке - чини ЈС Еогеасп изгради у смислен и једноставно решење: проширити трасе путева, изаберите машину и извршити испоруку робе.

ЈС фореацх објекат

Ако су руте, путеви и машине низовиобјеката, онда је алгоритам у великој мери поједностављен. Чудно је да је изглед ЈС фореацх дизајна толико дуго чекао. Међутим, упркос једноставности писаног, у пракси је прилично тешко имплементирати.

Практицирајте ЈС фореацх и стварне предмете

Размишљање савременог програмера функционише са уобичајеним објектима за програмирање, али не и објектима стварног проблема. Није уобичајено разумјети као такав пут, аутомобил, пут, растојање ...

Објектно оријентисано програмирање је еволуирао незгодна стазе, и традиционално је одлука да се створи програма објекат низ, форме, дугмад, Роуте кутију селекције, итд

Поред тога, ЈС предњачи на исти начин са другимјезички конструкти се извршавају у претраживачу посјетиоца, што у пракси представља озбиљна ограничења. Није сваки девелопер спреман да дели свој код. Ефективни примјери кориштења низова и збирки стварних предмета су добар начин за побољшање знања.

Међутим, доступност ЈаваСцрипт кода занеадекватна употреба од стране програмера има индиректан утицај на развој обећавајућих идеја за стварање динамичких и стварних објеката. ЈС предсказане конструкције још нису савршене, а развој њихове семантике чини се врло перспективним правцем.

</ п>