Не само да је потребно да програмер заврши задатке, већ је неопходно и да их ради на ефикаснији начин. Данас је у ЈаваСцрипт-у доступно неколико библиотека које програмерима олакшавају рад са варијаблама. Научићемо како да користимо најчешће функције Лодасх библиотеке у овом водичу.
Ако још нисте пробали Лодасх, сада је тренутак. Лодасх је савремени ЈаваСцрипт услужни пакет који поједностављује рад са низовима, целим бројевима, објектима, текстовима и другим типовима података.
Помоћи ће вам у раду са различитим врстама објеката и уштедеће вам време елиминишући потребу за кодирањем генеричких метода. Ваш код ће бити чистији са мање редова и функционисаће у свим претраживачима. Ако га већ не користите, требало би да га пажљиво размотрите.
Неусвајање Лодасх-а је огроман губитак за наше ЈаваСцрипт базе кода. То је елегантно решење без грешака за уобичајене изазове које имамо на послу, а његово коришћење ће само учинити наш код читљивијим и лакшим за управљање.
Хајде да се удубимо у неке од популарнијих (или не!) Лодасх функција и откријемо колико је ова библиотека изузетно корисна и лепа.
1. _.сортедУник
Све дуплиране вредности неће бити враћене са овом. Пошто је само за сортиране низове, ово се углавном користи из разлога брзине. Ово је корисно само ако имате посла са великим низом. Ако желите да побољшате брзину, сортирајте свој низ и користите методе које боље раде са сортираним низовима.
Лодасх има низ других функција које су сличне овој. Можете погледати .сортедИндек, .сортедИндекБи, .сортедИндекОф, .сортедЛастИндек, .сортедЛастИндекБи, .сортедЛастИндекОф, .сортедУник, .сортедУникБи, .сортедУникБи, .сортедУникУникБи, .сортедУникУникБи, .
2. _.смањити
_.редуце је сличан функцији филтера. Једина разлика је у томе што имате могућност избора облика враћеног објекта. То је нормално, ако не разумете шта говорим; постоји пример за то.
У суштини, враћамо нови објекат који садржи кориснике класификоване по годинама, али само за оне од 18 до 59 година. Ова помоћна функција Лодасх-а је једна од најчешће коришћених. Такође је укључен у ЕС6. Такође бих желео да укажем на две типичне грешке: запамтите да вратите резултат на крају функције и наведите подразумевану вредност за резултат као трећи параметар (овде).
3. _.гет и ._сет
За ову ћу вас донекле преварити тако што ћу вам показати две функције које обављају скоро исту ствар. _.гет враћа вредност својства из објекта, а _.сет, па, погодили сте, поставља својство са вредношћу. Ништа јединствено, осим што својству можете приступити преко његове путање.
Хајде да погледамо пример.
Ако путања не постоји док се позива _.сет, биће генерисана. Неће више бити грешака „Не могу да поставим својство „ставке“ недефинисаних“. Ако путања не постоји, _.гет ће уместо грешке вратити недефинисано. Ако се путања реши у недефинисану, можете такође да унесете подразумевану вредност (трећи параметар).
4. _.пронађи
Уместо да петљамо низ низ да бисмо пронашли један објекат, можемо користити _.финд. То је добро, али то није једина ствар коју _.финд може да уради. Са једном линијом кода, такође можете открити објекат коришћењем бројних својстава. Погледај!
5. _.кеиБи
Један од мојих омиљених је _.кеиБи. Прилично је корисно када покушавате да добијете објекат са одређеним атрибутом. Претпоставимо да имамо 100 уноса на блогу и желимо да узмемо онај са ИД-ом „34абц“. Како ћемо то да урадимо? Хајде да видимо шта се дешава! Овај метод вам може помоћи да организујете колекцију објеката ако је сервер обезбеди као низ. Функција се такође може користити као други аргумент.
6. _.форЕацх
Овај метод ће итерирати низ објеката један по један, омогућавајући вам да радите било коју логику коју желите. У овом првом примеру, прећи ћу преко листе корисничких објеката, спајајући њихова имена и презимена да бих направио ново својство под називом фуллНаме.
заСваки од њих прихвата два параметра. Низ преко којег прелазимо је први параметар. Други аргумент је функција понављања, при чему је први параметар референца појединачне ставке, а други је тренутни индекс итерације.
7. _.мапа
Мапа, као и форЕацх, понавља низ вредности. Функција мап, с друге стране, враћа нови низ вредности које обезбеђује функција итерације. Користимо исту колекцију корисника као у нашем форЕацх примеру овде. Можемо користити _.мап да генеришемо нову променљиву која има спљоштени низ комплетних имена свих корисника.
8. _.разлика
Функција разлике ће произвести нови низ вредности које се разликују између првог и другог низа. Важно је напоменути да локације аргумената утичу на исход.
9. _.гет
Функција _.гет() може нам помоћи у лоцирању елемента унутар објекта. Можемо поставити подразумевану вредност за функцију _.гет() да се врати ако елемент није пронађен на достављеној путањи. Функција _.гет() узима три параметра, од којих је први објекат из којег желимо да добијемо елемент. Пут је други. Трећа вредност је подразумевана вредност коју желимо да вратимо ако се елемент не може лоцирати.
10. _.пронађи
Функција _финд() може изгледати идентична методи _.гет(). Функција _.финд(), као и метода _.гет(), прихвата три параметра. Међутим, за разлику од методе _.гет(), први аргумент може бити низ или објекат. Други аргумент специфицира функцију која ће бити позвана на свакој итерацији. Трећи улаз је почетни индекс колекције. Зато што функција _.финд() понавља сваки елемент у колекцији.
11. _.гроупБи
Креирајте објекат назван резултатом функције (или насумично одабраним именом својства), при чему је свака вредност низ објеката са истим кључем.
12. _.сет
Метода _.сет() је инверзна метода _.гет(). То ће променити вредност елемента на датој путањи. Објекат или низ је први параметар, путања је други, а вредност коју желите да поставите је трећа.
13. _.мерге
Функционише слично као Објецт.ассигн, осим што се враћа дубоко у основну структуру да ажурира дубље објекте уместо да их замени.
14. ._дебурр
Ово је прилично директан пример. Све „комбиновање дијакритичких ознака“ су уклоњене. Тако „е“ постаје „е“. Када постоји интернационализација и локализација, добра је пракса да се скине ивица текста за функције претраживања.
15. _.дебоунце
Ово је једна од најефикаснијих Лодасх стратегија. Такође може бити тешко схватити шта ради и када треба да га користите. Метода _.дебоунце() враћа функцију. Функција методе _.дебоунце() ће одложити позивање док не прође одређени број милисекунди од последњег позивања функције.
Zakljucak
Лодасх је моћно проширење ЈаваСцрипт језика. Уз минималан напор, може се направити сажет и ефикасан код. Лодасх је такође потпуно модуларан. Иако неке од његових функционалности могу на крају бити застареле, верујем да ће и даље пружати бројне предности програмерима, а истовремено ће покретати еволуцију ЈС језика.
Надам се да ће вам ових неколико Лодасх могућности помоћи да видите колико Лодасх може бити моћан када радите са низовима, објектима и колекцијама. Можете посетити документација да истражи мноштво других опција које нуди.
Ostavite komentar