КампутарыАперацыйныя сістэмы

Стэк 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

 

 

 

 

Newest

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