자바스크립트 라이브러리 lodash

 

데이터 구조를 쉽게 다룰 수 있게 도와주는 도구이다.

array, collection, date 같은 것들을 쉽게 처리할 수 있다.

특히 js에서 배열 안의 객체 값을 다룰 때 유용하다.

 

 

1. lodash의 .isEmpty() 메서드

 

이 메서드는 오브젝트, 컬렉션, 맵, 세트 등이 비어 있는지 아닌지를 체크하는 도구이다.

비어 있으면 true를 리턴하고, 안 비어 있으면 false를 리턴한다.

 

예를 들어, 빈 배열이나 빈 오브젝트를 .isEmpty()로 체크하면 true를 리턴한다.

반대로, 요소가 하나라도 들어 있는 배열이나 프로퍼티가 있는 오브젝트는 false를 리턴한다.

 
console.log(_.isEmpty([])); // true
console.log(_.isEmpty({})); // true
console.log(_.isEmpty([1, 2, 3])); // false
console.log(_.isEmpty({ 'a': 1 })); // false
 

뿐만 아니라, null이나 undefined 같은 값도 체크할 수 있다. 비어 있는 값으로 간주되므로 (비어있냐? 는 함수니까)true를 리턴한다.

console.log(_.isEmpty(null)); // true
console.log(_.isEmpty(undefined)); // true

 

 

lodash의 .isEmpty() 메서드 쓰면 좋은점:

1. 코드의 가독성이 높아진다.

2. 다양한 데이터 구조를 쉽게 검사할 수 있다. 특히 데이터가 비어 있는지 아닌지 빠르게 확인하고 싶을 때 아주 유용한 도구이다

 

 

 

 

2. lodas의 get 함수

 

get 함수는 객체 안의 깊숙한 속성에 안전하게 접근할 수 있도록 도와주는 유용한 도구이다.

보통 자바스크립트 객체의 깊은 속성에 접근할 때, 해당 속성이 존재하지 않으면 에러가 발생할 수 있다. get 함수를 사용하면 이러한 문제를 피할 수 있다.

예를 들어, 다음과 같은 객체가 있다고 하자:

const user = {
  name: 'John',
  address: {
    city: 'New York',
    zip: {
      code: 10001
    }
  }
};​

이 객체에서 zip 코드에 접근하는 방법은

const zipCode = user.address.zip.code;
원래 이렇다. 

하지만 만약 경로 중간에 있는 address나 zip 속성이 없다면 에러가 발생할 것이다.

get 함수를 사용하면 address나 zip 속성이 없어도 에러가 발생하지 않고 undefined를 반환한다.

 
import { get } from 'lodash'; const zipCode = get(user, 'address.zip.code');

 

 

 

 

 

또한, 아래와 같이 기본값을 설정할 수도 있다.

const zipCode = get(user, 'address.zip.code', 'Unknown');​

이렇게 하면 address나 zip 속성이 없을 때 'Unknown'을 반환한다.

 

 

=lodash의 get 함수를 사용하면 에러를 방지하고 기본값을 설정할 수 있어서 코드가 더 안정적이고 읽기 쉬워진다.

'WEB > Javascript' 카테고리의 다른 글

clsx란?  (0) 2024.07.13
Typescript의 interface  (0) 2024.07.10
enum in typescript  (0) 2024.07.05
타입스크립트에서 타입 지정하는 법  (0) 2024.07.01
[JS] promise~  (0) 2024.05.27

+ Recent posts