15 методов Lodash для повседневного кодирования
21 марта 2022 г.[Lodash] (https://lodash.com) — одна из самых популярных библиотек JavaScript с открытым исходным кодом. Он реализует множество помощников по функциональному программированию, которые упрощают повседневное кодирование. Это то, что я часто использую в своей работе по разработке, и поэтому я хотел поделиться с вами некоторыми из методов, которые я часто использую.
В этом коротком посте мы рассмотрим 15 повседневных методов, которые при правильном использовании могут ускорить разработку и сделать ваш код более читабельным.
1. перемешать
Создает массив перетасованных значений (используя версию перетасовки Фишера-Йейтса).
```javascript
импортировать в случайном порядке из «lodash/shuffle»;
константный результат = перемешивание ([1, 2, 3, 4, 5]);
// результат => [2, 5, 1, 4, 3]
2. заказПо
Создает массив элементов, отсортированных в указанном порядке по результатам выполнения каждого элемента в коллекции через каждую итерацию.
```javascript
импортировать orderBy из «lodash/orderBy»;
постоянные элементы = [
{название: "Товар А", цена: 2},
{название: 'Товар Б', цена: 8},
{название: 'Товар C', цена: 4},
{название: 'Товар D', цена: 4}
const result = orderBy(items, ['price', 'name'], ['desc', 'asc']);
результат => [
{название: 'Товар Б', цена: 8},
{название: 'Товар C', цена: 4},
{название: 'Товар D', цена: 4},
{название: 'Товар А', цена: 2}
3. чанк
Создает массив элементов, разделенных на группы заданного размера (если массив не может быть разделен равномерно, последний фрагмент будет содержать только оставшиеся элементы).
```javascript
импортировать чанк из 'lodash/chunk';
константный массив = [1, 2, 3, 4];
константный результат = кусок (массив, 2);
// результат => [[1, 2], [3, 4]]
4. взять
Создает срез массива с
n
элементами, взятыми с самого начала.
```javascript
импортировать из 'lodash/take';
константный результат = взять([1, 2, 3], 2);
// результат => [1, 2]
5. разница
Создает массив значений, не включенных в другие заданные массивы. Порядок и ссылки значений результата определяются первым массивом.
```javascript
импортировать разницу из «lodash/difference»;
константный результат = разница([1, 2, 3], [2, 3, 4]);
// результат => [1]
6. перекресток
Создает массив уникальных значений, которые входят во все заданные массивы. Порядок и ссылки значений результата определяются первым массивом.
```javascript
импортировать пересечение из 'lodash/intersection';
константный результат = пересечение ([1, 2, 3], [2, 3, 4]);
// результат => [2, 3]
7. пусто
Проверяет, является ли значение пустым объектом, коллекцией, картой или набором (объекты считаются пустыми, если у них нет собственных перечисляемых строковых свойств с ключом).
```javascript
импортировать isEmpty из «lodash/isEmpty»;
пусто({});
// => правда
isEmpty({имя: 'Джон Доу' });
// => ложь
8. дроссель
Создает регулируемую функцию, которая вызывает переданную функцию не более одного раза за каждый интервал, указанный в миллисекундах.
```javascript
импортировать дроссель из «lodash/throttle»;
постоянный дроссель = дроссель (() => {
console.log('Дросселирование через 50 мс!');
}, 50);
window.addEventListener («изменить размер», дросселирование);
9. устранение дребезга
Создает отмененную функцию, которая откладывает вызов переданной функции до тех пор, пока не истечет указанное время ожидания с момента последнего вызова отмененной функции.
```javascript
импортировать debounce из «lodash/debounce»;
const debounced = debounce(() => {
console.log('Отказано через 400 мс!');
}, 400);
window.addEventListener('resize', debounced);
10. слияние
Рекурсивно объединяет собственные и унаследованные перечисляемые строковые свойства исходных объектов с целевым объектом.
```javascript
импортировать слияние из «lodash/merge»;
const firstObject = {'A': [{'B': 1}, {'C': 2}] };
const secondObject = {'A': [{'B': 3}, {'D': 4}] };
константный результат = слияние (первый объект, второй объект);
// результат => {А: [{В: 3}, {С: 2, Д: 4}] }
11. клонГлубокий
Создает глубокий клон указанного значения.
```javascript
импортировать cloneDeep из «lodash/cloneDeep»;
постоянные элементы = [
{имя: 'Элемент А'},
{имя: 'Элемент Б'},
константный результат = cloneDeep (предметы);
// результат[0] === элементы[0] => ложь
12. startCase
Преобразует строку в начальный регистр (первая буква каждого слова заглавная).
```javascript
импортировать startCase из «lodash/startCase»;
startCase('--foo-bar--');
// => 'Фу Бар'
startCase('fooBar');
// => 'Фу Бар'
startCase('FOO_BAR');
// => 'ФОО-БАР'
13. кебабкейс
Преобразует строку в кебабный регистр (пунктуация удаляется, текст преобразуется в нижний регистр, а пробелы заменяются одинарными дефисами).
```javascript
импортировать kebabCase из lodash/kebabCase;
kebabCase('Бар Фу');
// => 'foo-бар'
kebabCase('fooBar');
// => 'foo-бар'
kebabCase('FOO_BAR');
// => 'foo-бар'
14. змея
Преобразует строку в snake case (пунктуация удаляется, текст преобразуется в нижний регистр, а пробелы заменяются одинарными символами подчеркивания).
```javascript
импортировать snapCase из 'lodash/snakeCase';
змеяCase('Бар Foo');
// => 'foo_bar'
змеяCase('fooBar');
// => 'foo_bar'
змеяCase('--FOO-BAR--');
// => 'foo_bar'
15. CamelCase
Преобразует строку в верблюжий регистр (пробелы и знаки препинания удаляются, а первая буква каждого слова становится заглавной).
```javascript
импортировать camelCase из lodash/camelCase;
camelCase('Бар Foo');
// => 'fooBar'
camelCase('--foo-bar--');
// => 'fooBar'
camelCase('FOO_BAR');
// => 'fooBar'
Это все. Спасибо! Надеюсь, это поможет вам в следующий раз, когда вы будете писать приложение на JavaScript. Lodash — очень популярная библиотека с открытым исходным кодом, которую стоит проверить, если вы ищете способы быстрее создавать веб-приложения.
Оригинал