Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 객체가 비어 있는지 확인하는 방법 – Object.entries() 완벽 가이드

JavaScript에서 빈 객체 확인하기

먼저, 다음과 같이 아무런 속성도 가지지 않는 빈 객체(empty object)가 있습니다.

const emptyObject = {}

그렇다면 JavaScript에서 객체가 비어 있는지 어떻게 확인할 수 있을까요? 정답은 바로 Object.entries() 함수를 사용하는 것입니다.

Object.entries()의 동작 원리

Object.entries()는 객체를 키(key)와 값(value) 쌍으로 이루어진 배열로 변환해 주는 내장 메서드입니다. 따라서 객체에 속성이 하나도 없다면 결과로 빈 배열을 반환하게 됩니다.

예시를 통해 살펴보겠습니다. 다음은 또 다른 빈 객체입니다.

const someObject = {}

이 객체에 Object.entries() 함수를 적용해 보겠습니다.

Object.entries(someObject)

결과를 콘솔에 출력하면 다음과 같습니다.

console.log(Object.entries(someObject))
// [] (빈 배열)

즉, 객체가 비어 있다면 결과는 항상 빈 배열 []이 됩니다.

속성이 있는 경우와 비교

반대로 속성이 존재하는 객체라면 키와 값의 쌍이 담긴 배열이 반환됩니다.

const user = { name: 'Kim', age: 25 }

console.log(Object.entries(user))
// [['name', 'Kim'], ['age', 25]]

실전 활용 예제

이 특성을 활용하면 객체의 빈 여부를 아주 간단한 함수로 판별할 수 있습니다.

function isEmpty(obj) {
  return Object.entries(obj).length === 0
}

console.log(isEmpty({}))        // true
console.log(isEmpty({ a: 1 }))  // false

이처럼 Object.entries()를 사용하면 외부 라이브러리 없이 순수 JavaScript만으로 객체가 비어 있는지 손쉽게 확인할 수 있습니다.