Lodash е JavaScript библиотека, която предлага помощни функции за типични програмни задачи, използвайки модела за функционално програмиране.
Библиотеката, която работи с уеб браузъри и Node.js, може да променя и конвертира данни, да извършва асинхронни операции и др.
Научете как да използвате lodash за манипулиране на масиви, низове и обекти и разберете за неговите разширени функции като състав на функция.
Първи стъпки с Lodash
Можете да добавите lodash към приложението си по един от двата начина: като използвате мрежа за доставка на съдържание (CDN) или го инсталирате с помощта на npm или yarn.
За да използвате lodash директно в браузъра, копирайте връзката на lodash CDN по-долу и я вмъкнете в секцията head на вашия HTML файл:
<сценарийsrc=" https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"
type="text/javascript">сценарий>
Използвайки този подход, можете да изпълнявате скриптове, използвайки lodash в тялото на вашия HTML.
За да използвате lodash в проект Node.js, трябва да го инсталирате в директорията на вашия проект. Можете да използвате npm или yarn за това:
npm install --save lodash
# или
прежда добавете lodash
Вече можете да използвате lodash, като го изисквате във вашия JavaScript файл:
// Изискване на библиотеката lodash
конст _ = изискват("лодаш");
// Използване на метода _.sum
конст числа = [10, 20, 30, 40, 50];
конст сума = _.сума (числа);
конзола.log (сума);
За да стартирате вашия JavaScript файл, въведете командата node:
възел [име на вашия скрипт]
Манипулиране на масиви в Lodash
Lodash идва с набор от методи за манипулиране на масиви, които предоставят функционалност извън вградения клас Array на JavaScript.
.къс
Този метод разделя масив на групи от по-малки масиви с даден размер. Последната част може да е по-малка от заявения от вас размер.
Ето един пример:
конст масив = [ "а", "б", '° С', 'д', "д", "е", "g" ];
конст newArray = _.chunk (масив, 2)
конзола.log (нов масив)
// Изход:
// [ [ 'a', 'b' ], [ 'c', 'd' ], [ 'e', 'f' ], [ 'g' ] ]
.concat
Този метод генерира нов масив чрез конкатениране на стойности до края на съществуващ масив.
Например:
констмасив = [ 1, 2, "а" ];
конст нов масив = _.concat(масив, 5, "б", [ 8 ], [ [ 9 ] ]);
конзола.log (нов масив);
// Изход:
// [ 1, 2, 'a', 5, 'b', 8, [ 9 ] ]
.присъединяване
Този метод връща низ чрез комбиниране на елементи от масив. Той ги свързва с помощта на разделител, който предавате като параметър при извикване на метода. Разделителят по подразбиране, който използва, е запетая:
констмасив = [ "аз", "о", "д", "а", "с", "з" ];
конст newArray = _.join(масив);
конзола.log (нов масив);// Изход:
// l, o, d, a, s, hконст newArray = _.join(масив, "-");
конзола.log (нов масив);
// Изход:
// л-о-д-а-с-ч
Манипулиране на низове в Lodash
С чист JavaScript, форматирането на низ е прост процес. Но lodash го прави още по-лесно.
Някои от най-често срещаните операции за манипулиране на низове, които можете да извършвате с lodash, включват:
.startsWith и .endsWith
Тези два метода проверяват съответно дали даден низ започва или завършва с подниз. И двата метода връщат булева стойност true или false.
Например:
конст низ = "лодаш";
конзола.log (_.startsWith (низ, "аз"));
// Изход: вярноконзола.log (_.startsWith (низ, "о"));
// Изход: невярноконзола.log (_.endsWith (низ, "м"));
// Изход: невярно
конзола.log (_.endsWith (низ, "з"));
// Изход: вярно
.повтаряне
Този метод многократно отпечатва низ определен брой пъти. Той приема низа като първи аргумент и броя на повторенията като втори:
конст низ = "лодаш"
конст newString = _.repeat (низ, 3);
конзола.log (нов низ);
// Изход: lodashlodashlodash
.подстригване
Този метод премахва празното пространство в началото и в края. Можете също да го използвате, за да премахнете всякакви специфични знаци в началото и края на низ.
Например:
// Премахване на празно пространство в началото и в края
конст низ = "бар"
конст newString = _.trim (низ)
конзола.log (нов низ);
// Изход: бар
// Премахване на определени знаци
конст низ = ", бар,"
конст newString = _.trim (низ, ",")
конзола.log (нов низ);
// Изход: бар
Манипулиране на обекти в Lodash
По-долу са някои примери за манипулиране на низове, които можете да извършите с lodash:
.сливане
The _.merge() метод създава нов обект чрез комбиниране на свойствата на входните обекти. Стойността на свойство от по-късния обект ще замени стойността от по-ранния обект, ако свойството присъства в повече от един обект.
Например:
конст книги = {
"математика": 4,
"Наука": 7
};
конст бележки = {
"Наука": 3,
'Химия': 5
};_.сливане(книги, бележки);
конзола.дневник (книги);
// Изход:
// { Математика: 4, Наука: 3, Химия: 5 }
В този пример методът добавя свойството „Химия“ от втория обект и презаписва стойността на свойството „Наука“ на първия обект.
.има
Този метод връща true, ако дадена поредица от свойства съществува в обект, и false в противен случай.
Например:
конст книги = {
"математика": 4,
"Наука": 7
};
конзола.log (_.has (книги, "математика"));
// Изход: вярно
.пропускам
Този метод връща нов обект, като премахва определени свойства от дадения.
Например:
вар книги = {
"математика": 4,
"Наука": 3,
'Химия': 5
};
конзола.log (_.пропускане (книги, "наука"));
// Резултат: {Математика: 4, Химия: 5}
Функционална композиция в Lodash
Функционалната композиция е техника, която можете да използвате в функционален език за програмиране. Това включва комбиниране на две или повече функции в нова функция чрез извикване на всяка функция в определен ред. Тази функция ви позволява да създавате по-сложна логика от по-прости функции.
За да приложите тази техника, lodash идва с _.поток и _.flowRight функции. The _.flow() приема списък от функции като аргументи и извежда нова функция, която прилага функциите в същия ред, в който ги предавате. The _.flowRight() функция прави същото, но извиква функциите в обратен ред.
Например:
функцияaddFive(номер) {
връщане номер + 5
}функцияпъти два(номер) {
връщане номер * 2
}конст addFiveAndTimesTwo = _.flow([addFive, timesTwo]);
конст addFiveAndTimesTwoReverse = _.flowRight([addFive, timesTwo]);
конзола.log (addFiveAndTimesTwo(3));
// Изход: 16
конзола.log (addFiveAndTimesTwoReverse(3));
// Изход: 11
Горният код дефинира функциите addFive и пъти два. Функцията addFive връща резултата от добавяне на 5 към дадено число. Функцията timesTwo умножава въведено число по 2 и връща резултата.
След това кодът използва _.flow() функция за комбиниране на другите две и създаване на новата функция, addFiveAndTimesTwo. Тази нова функция първо ще изпълни операцията addFive върху своя аргумент, преди да изпълни операцията timesTwo върху крайния резултат.
The _.flowRight() функция произвежда нова функция, която прави същото като flow, но обратното.
И накрая, този код извиква двете нови функции, преминавайки 3, като аргумент, и записва резултатите в конзолата.
Ползите от работата с Lodash
Можете да използвате lodash, за да опростите кода си и да направите проектите си по-гъвкави и поддържаеми. Неговата широка гама от помощни функции, широкото приемане и редовните актуализации ще ви помогнат да пишете елегантен, ефективен код. Можете да използвате lodash, за да гарантирате, че вашият код е винаги актуален и съвместим със съвременните браузъри.