개발자는 작업을 완료해야 할 뿐만 아니라 작업을 보다 효율적으로 수행해야 합니다. 오늘날 JavaScript에서 사용할 수 있는 여러 라이브러리가 있어 개발자가 변수 작업을 더 쉽게 수행할 수 있습니다. 이 튜토리얼에서는 Lodash 라이브러리의 가장 일반적인 기능을 활용하는 방법을 배웁니다.
아직 Lodash를 사용하지 않았다면 지금이 바로 그 순간입니다. Lodash는 배열, 정수, 개체, 텍스트 및 기타 데이터 유형 작업을 더 쉽게 단순화하는 최신 JavaScript 유틸리티 패키지입니다.
다양한 종류의 개체를 처리하는 데 도움이 되며 일반 메서드를 코딩할 필요가 없으므로 시간을 절약할 수 있습니다. 코드는 더 적은 줄로 더 깔끔해지고 모든 브라우저에서 작동합니다. 아직 사용하고 있지 않다면 신중하게 고려해야 합니다.
Lodash를 채택하지 않는 것은 JavaScript 코드베이스에 큰 손실입니다. 우리가 직장에서 겪는 일반적인 문제에 대한 버그가 없고 우아한 솔루션이며 이를 활용하면 코드를 더 읽기 쉽고 관리하기 쉽게 만들 수 있습니다.
좀 더 인기 있는(또는 그렇지 않은!) Lodash 기능을 살펴보고 이 라이브러리가 얼마나 유용하고 아름다운지 알아보겠습니다.
1. _.sortedUniq
중복된 모든 값은 이 값과 함께 반환되지 않습니다. 정렬된 배열만을 위한 것이기 때문에 주로 속도상의 이유로 활용됩니다. 이것은 큰 배열을 다루는 경우에만 유용합니다. 속도를 향상시키려면 배열을 정렬하고 정렬된 배열에서 더 잘 작동하는 방법을 사용하십시오.
Lodash에는 이와 유사한 많은 다른 기능이 있습니다. .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexOf, .sortedUniq, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy, qBy를 볼 수 있습니다.
2. _.감소
__.reduce는 필터 함수와 유사합니다. 유일한 차이점은 반환된 개체의 형식을 선택할 수 있는 옵션이 있다는 것입니다. 내 말을 이해하지 못한다면 정상입니다. 그것에 대한 예가 있습니다.
본질적으로 우리는 연령별로 분류된 사용자를 포함하는 새 객체를 반환하지만 18세에서 59세 사이의 사용자에게만 해당됩니다. 이 Lodash 도우미 함수는 가장 일반적으로 사용되는 기능 중 하나입니다. ES6에도 포함되어 있습니다. 나는 또한 두 가지 일반적인 실수를 지적하고 싶습니다. 함수가 끝날 때 결과를 반환하고 결과에 대한 기본값을 세 번째 매개변수(여기)로 제공하는 것을 기억하십시오.
3. _.get 및 ._set
이를 위해 거의 동일한 기능을 수행하는 두 가지 기능을 보여줌으로써 여러분을 속일 것입니다. __.get은 객체에서 속성 값을 반환하고 _.set은 짐작하겠지만 값으로 속성을 설정합니다. 경로를 통해 속성에 액세스할 수 있다는 점을 제외하고 고유한 것은 없습니다.
예를 들어 보겠습니다.
_.set을 호출하는 동안 경로가 존재하지 않으면 생성됩니다. 더 이상 "정의되지 않은 '항목' 속성을 설정할 수 없습니다" 오류가 발생하지 않습니다. 경로가 존재하지 않으면 _.get은 오류 대신 undefined를 반환합니다. 경로가 정의되지 않은 것으로 확인되면 기본값(세 번째 매개변수)을 제공할 수도 있습니다.
4. _.찾기
단일 객체를 찾기 위해 배열을 반복하는 대신 _.find를 사용할 수 있습니다. 그것은 좋은 일이지만 _.find가 할 수 있는 유일한 일은 아닙니다. 한 줄의 코드로 수많은 속성을 활용하여 개체를 발견할 수도 있습니다. 확인 해봐!
5. _.키바이
내가 가장 좋아하는 것 중 하나는 _.keyBy입니다. 특정 속성을 가진 객체를 얻으려고 할 때 매우 유용합니다. 100개의 블로그 항목이 있고 ID가 "34abc"인 항목을 가져오려고 한다고 가정합니다. 어떻게 할까요? 무슨 일이 일어나는지 보자! 이 방법은 서버가 배열로 제공하는 경우 개체 컬렉션을 정렬하는 데 도움이 될 수 있습니다. 함수를 두 번째 인수로 사용할 수도 있습니다.
6. _.각각
이 메서드는 개체 배열을 하나씩 반복하므로 원하는 논리를 수행할 수 있습니다. 이 첫 번째 예에서는 사용자 개체 목록을 반복하여 이름과 성을 병합하여 fullName이라는 새 속성을 만듭니다.
forEach는 두 개의 매개변수를 허용합니다. 우리가 반복하는 배열은 첫 번째 매개변수입니다. 두 번째 인수는 반복 함수로, 첫 번째 매개변수는 개별 항목 참조이고 두 번째 매개변수는 반복의 현재 인덱스입니다.
7. _.지도
Map은 forEach와 같이 값 배열을 반복합니다. 반면에 map 함수는 iterate 함수에서 제공하는 새로운 값 배열을 반환합니다. 여기에서 forEach 예제와 동일한 사용자 컬렉션을 사용하고 있습니다. 우리는 _.map을 사용하여 모든 사용자의 완전한 이름의 평면화된 배열이 있는 새 변수를 생성할 수 있습니다.
8. _.차이
차이 함수는 첫 번째 배열과 두 번째 배열 간에 다른 값의 새 배열을 생성합니다. 인수의 위치가 결과에 영향을 미친다는 점에 유의하는 것이 중요합니다.
9. _.얻다
_.get() 함수는 객체 내에서 요소를 찾는 데 도움이 될 수 있습니다. 제공된 경로에서 요소를 찾을 수 없는 경우 반환하도록 _.get() 함수의 기본값을 설정할 수 있습니다. _.get() 함수는 세 개의 매개변수를 취하며, 그 중 첫 번째는 요소를 얻으려는 객체입니다. 경로는 두 번째입니다. 세 번째 값은 요소를 찾을 수 없는 경우 반환하려는 기본값입니다.
10. _.찾기
_find() 함수는 _.get() 메서드와 동일하게 나타날 수 있습니다. _.find() 함수는 _.get() 메서드와 마찬가지로 세 개의 매개 변수를 허용합니다. 그러나 _.get() 메서드와 달리 첫 번째 인수는 배열 또는 개체일 수 있습니다. 두 번째 인수는 각 반복에서 호출될 함수를 지정합니다. 세 번째 입력은 컬렉션의 시작 인덱스입니다. _.find() 함수는 컬렉션의 각 요소를 반복하기 때문입니다.
11. _.그룹바이
함수의 결과(또는 임의로 선택된 속성 이름)로 이름이 지정된 객체를 생성합니다. 각 값은 동일한 키를 가진 객체의 배열입니다.
12. _.세트
_.set() 메서드는 _.get() 메서드의 반대입니다. 주어진 경로에서 요소의 값을 변경합니다. 개체 또는 배열이 첫 번째 매개변수이고 경로가 두 번째 매개변수이며 설정하려는 값이 세 번째 매개변수입니다.
13. _.병합
Object.assign과 유사하게 작동합니다. 단, 기본 구조로 깊숙이 재귀하여 더 깊은 객체를 교체하지 않고 업데이트한다는 점만 다릅니다.
14. ._데버
이것은 다소 간단한 예입니다. 모든 "분음 부호 결합"이 제거됩니다. 따라서 "e"는 "e"가 됩니다. 국제화 및 현지화가 있는 경우 검색 기능을 위해 텍스트를 디버링하는 것이 좋습니다.
15. _.디바운스
이것은 가장 효과적인 Lodash 전략 중 하나입니다. 또한 이 기능이 무엇을 하고 언제 사용해야 하는지 파악하기 어려울 수 있습니다. _.debounce() 메서드는 함수를 반환합니다. _.debounce() 메서드의 함수는 함수가 마지막으로 호출된 이후 지정된 시간(밀리초)이 경과할 때까지 호출을 지연합니다.
결론
Lodash는 JavaScript 언어의 강력한 확장입니다. 최소한의 노력으로 간결하고 효율적인 코드를 작성할 수 있습니다. Lodash는 또한 완전히 모듈화되어 있습니다. 일부 기능은 궁극적으로 더 이상 사용되지 않을 수 있지만 JS 언어의 발전을 주도하는 동시에 개발자에게 여전히 많은 이점을 제공할 것이라고 믿습니다.
이 몇 가지 Lodash 기능이 배열, 개체 및 컬렉션으로 작업할 때 Lodash가 얼마나 강력한지 확인하는 데 도움이 되기를 바랍니다. 당신은 방문 할 수 있습니다 선적 서류 비치 제공해야 하는 수많은 다른 옵션을 탐색합니다.
댓글을 남겨주세요.