1. lodash란 무엇인가?
- JavaScript의 인기있는 라이브러리 중 하나로 보통의 경우 array,collection,date 등의 데이터의 필수적인 구조를 쉽게 다룰 수 있게끔 하는데에 사용된다.
- JavaScript에서 배열 안의 객체들의 값을 handling(배열, 객체 및 문자열 반복/ 복합적인 함수 생성) 할 때 유용하다.
- JavaScript의 코드를 줄여주고, 빠른 작업에 도움이 된다.
- 브라우저에서 지원하지 않는 성능이 보장되어있는 다양한 메소드를 가지고 있다.
- 퍼포먼스 측면에서 native보다 더 나은 성능을 가진다.
- npm이나 기타 패키지 매니저를 통해 쉽게 사용 가능하다.
2. lodash 메서드
1. array 관련 메서드
- findindex() : 배열 내에서 원하는 index를 쉽게 구할 수 있다.
let coffee = [
{name : 'Americano', price : 4000},
{name : 'CaffeMocha', price : 5000},
{name : 'CaffeLatte', price : 4500},
];
_.findindex(coffee,function(coffee){
return 4000 < coffee.price;
})
// 콜백함수를 통해 가격이 4000이상인 객체가 처음으로 나오는 index를 반환한다.
// 1
_.findindex(coffee,{name : 'CaffeLatte' price : 4500});
// 일치하는 object의 처음 index값을 반환한다.
// 2
_.findindex(coffee, price : 4500);
// 가격이 4500인 처음 객체의 index값을 반환한다.
// 2
- flatten() : 다차원 배열 내의 요소를 출력하는데 편리하다.
_.flatten([1,[2,3,[4]]);
// 배열 안의 배열 값을 순서대로 나열한다. (depth를 명시하지 않을 경우 1 depth만 배열에서 빼낸다.)
// [1,2,3,[4]]
_.flatten([1,[2,3,[4]]],true);
// 배열 안에서 배열의 깊이와는 상관 없이 배열의 값을 순서대로 나열한다.
// [1,2,3,4]
- remove() : 배열 내의 조건에 맞는 요소들을 제거한 후 반환한다.
let array = [1,2,3,4];
let evens = remove(array,function(number){
return number%2 = 0;
})
console.log(array); // [1,3]
console.log(evens); // [2,4]