Кампутары, Аперацыйныя сістэмы
Стэк JavaScript push / pop
У JavaScript няма стэка, але ёсць масіў, які можна выкарыстоўваць як стэк. Пры гэтым, маніпулюючы метадамі масіва JavaScript Push / pop, можна мець у сваім распараджэнні стэк, масіў і ўласную арганізацыю дадзеных.
У першым набліжэнні масівы - гэта звыклая і папулярная структура дадзеных. Але праца з імі як са стэкам надае ім не прадугледжаныя сінтаксісам мовы магчымасці. Даданне / выдаленне з дапамогай JavaScript push / pop у канец або unshift / shift ў пачатак не толькі зручна, але і практычна.
выкарыстанне метадаў
Масіў можна папаўняць новымі элементамі пры дапамозе метаду push. Вынікам гэтага метаду будзе новае колькасць элементаў масіва. Зваротная працэдура - метад pop не мае параметраў, але выдае ў якасці выніку апошні элемент масіва.
Як вынікае з сінтаксісу і логікі мовы, масівы могуць працаваць з дадзенымі любых тыпаў.
JavaScript push object - нонсэнс або прагрэс?
Мова браўзэра не саступае сваім больш «свабодным» калегам у дачыненні да аб'ектна-арыентаванага праграмавання, гэта значыць гэтак жа дае магчымасць ствараць аб'екты. Пры гэтым ключавога слова, якое пазначае нешта, што мае дачыненне да ООП, не мае.
Наогул кажучы, тое, што ёсць у JavaScript, да гэтага часу не дазволіў сабе мець ні адзін «свабодны» ад браўзэра мова праграмавання. Самае арыгінальнае - стварэнне аб'екта тут - справа рук праграміста, пачынаючы з імя аб'екта.
Метады JavaScript pop & push пры выкарыстанні аб'ектаў прадастаўляюць праграмісту магчымасць стварыць шматфункцыянальны аб'ект у прамым значэнні гэтага слова.
Напрыклад, маючы некалькі узаемазвязаных, але розных старонак (аб'ектаў, ніяк не звязаных паміж сабой логікай дыялогу), можна рэалізаваць рух па іх наведвальніка. Змясціўшы ў стэк (масіў) метадам push аб'ект пачатковай старонкі (прыйшоў наведвальнік), даць яму выбар далейшых дзеянняў.
Наступны push размесціць зверху аб'ект старонкі, якую абраў наведвальнік. Адкат pop верне яго назад. Рух далей - чарговы push, і так будзе сфарміраваны дыялог бягучага наведвальніка. Гэта можа як спатрэбіцца распрацоўніку ў сэнсе вопыту і статыстыкі, так і забяспечыць навігацыю ў бягучым сеансе працы сайта.
Стэк, масіў і арганізацыя дадзеных
Існуе шмат задач, калі вынік патрабуе шматварыянтнасць выбару. Калі для рэалізацыі выбраць камплект аператараў if або case, атрымаецца вялікі, доўгі і галінасты «куст» умоў.
У цэлым гэта не самае дрэннае рашэнне, але калі спатрэбіцца нешта змяніць, прыйдзецца доўга ўспамінаць, якое ўмова за якім варта, ды і алгарытм атрымаецца неразборлівым, а самае непрыемнае, можа стаць крыніцай цяжка выяўляных памылак.
Пры дапамозе стэка практычна ва ўсіх выпадках можна паступіць прасцей.
Ёсць задача: трэба абраць выканаўцы з сотні даступных. Кожны выканаўца можа рабіць нешта з трох пазіцый (ад адной да трох у любым спалучэнні):
- t - рабіць тэхнічнае абслугоўванне;
- s - можа цалкам выконваць рамонтныя работы;
- i - мае права рабіць гарантыйны рамонт.
Каб хутка абраць выканаўцы для замовы з патрэбным выглядам (відамі работ), можна зрабіць тры аперацыі JavaScript push і зліць масіў у адзін радок.
Пошук па радку ў радку заўсёды наглядна, чым шматлікія ўмовы. Гэта просты выпадак ўсяго тры на тры варыянты, але нават тут будзе шмат больш кода, чым у адным параўнанні ўсяго двух радкоў.
Similar articles
Trending Now