[Javascript] 객체(Object)가 비었는지 확인하는 방법

박기영·2022년 10월 9일
0

Javascript

목록 보기
6/45

배열이 비어있는 것을 확인하는 것은 length를 활용하면 쉽다.
그런데 객체는 length 속성을 사용할 수 없다.
어떻게 객체가 비어있다는 것을 확인할 수 있을까?

내장 메소드를 활용해서 간단하게 구현 할 수 있다.

Object.keys()

Object.keys() 메소드는 주어진 객체의 속성 이름들을 일반적인 반복문과 동일한 순서로 순회되는 열거할 수 있는 배열로 반환합니다.
- MDN docs -

즉, 특정 객체의 key를 배열의 형태로 만들어준다는 것이다.

아래의 예시를 보면 이해가 쉽다.

const object1 = {
  a: 'somestring',
  b: 42,
  c: false
};

console.log(Object.keys(object1));  // ["a", "b", "c"]

그래서..이를 어떻게 활용하느냐?

배열의 길이

key들이 배열이 되었다는 점에 주목하자.
배열은 length 속성을 사용할 수 있다!!

즉, 아래와 같은 코드를 사용할 수 있다는 것이다.

Object.keys(obj).length

obj라는 객체key로 이루어진 배열을 만들고,
그 것의 length를 구하는 것이다.

그렇다면, obj가 빈 배열이라면 어떻게 될까?
저 값은 0이 된다.

결론

obj라는 객체가 빈 객체인지 확인하고자 한다면,
아래와 같은 코드를 사용하자.

Object.keys(obj).length === 0

참고 자료

hi.anna님 블로그
haenny님 블로그
Object.keys() - MDN docs

profile
나를 믿는 사람들을, 실망시키지 않도록

0개의 댓글