Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

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.

instagram viewer

За да използвате 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, за да гарантирате, че вашият код е винаги актуален и съвместим със съвременните браузъри.