HOWTO · JavaScript

JavaScript에서 개체가 비어 있는지 확인

이 튜토리얼은 JavaScript에서 객체가 비어 있는지 확인하는 방법을 보여줍니다.

객체는 JavaScript에서 데이터를 구조화, 유지 관리 및 전송할 수 있으므로 중요한 역할을합니다. 그러나 우리가 얻는 물건이 비어있는 경우가 있습니다. 이 기사에서는 JavaScript에서 객체가 비어 있는지 확인하는 방법에 대한 몇 가지 방법을 보여줍니다.

hasOwnProperty()를 사용하여 JavaScript에서 객체가 비어 있는지 확인

지정된 속성이 개체에 있는지 여부를 확인할 수 있습니다. 아래 예에서는prop 속성이 있는지 두 개의 객체를 확인합니다. isObjEmpty()함수는 객체가 비어 있으면boolean 명령을 반환합니다.

이 함수는 지정된 속성이 있으면 False를 반환합니다. 그렇지 않으면 True를 반환합니다. 이 방법은 ECMAScript 5를 지원하지 않는 경우에만 유용합니다. ECMAScript 5를 사용할 수있는 경우 다음 프로세스를 확인하십시오.

const obj1 = {
  one: 1,
  two: 2,
  three: 3
};
const obj2 = {};

console.log('Is Object 1 Empty? : ', isObjEmpty(obj1));
console.log('Is Object 2 Empty? : ', isObjEmpty(obj2));

function isObjEmpty(obj) {
  for (var prop in obj) {
    if (obj.hasOwnProperty(prop)) return false;
  }

  return true;
}

출력:

Is Object 1 Empty? :  false
Is Object 2 Empty? :  true

Object.key()를 사용하여 JavaScript에서 객체가 비어 있는지 확인

이전 예제에서 JavaScript에서 객체가 비어 있는지 확인하는 방법을 보았습니다. 그러나 ECMAScript 5를 지원하면 다른 결과가 발생합니다.

이 예제에서는 객체에 키가 있는지 확인하기 위해Object.keys()명령을 사용할 것입니다. 키의 길이가 0이면 비어 있습니다. 그렇지 않으면 비어 있지 않습니다.

const obj1 = {
  one: 1,
  two: 2,
  three: 3
};
const obj2 = {};

console.log('Is Object 1 Empty? : ', isObjEmpty(obj1));
console.log('Is Object 2 Empty? : ', isObjEmpty(obj2));

function isObjEmpty(obj) {
  return Object.keys(obj).length === 0;
}

출력:

Is Object 1 Empty? :  false
Is Object 2 Empty? :  true

Underscore.js 라이브러리를 사용하여 JavaScript에서 객체가 비어 있는지 확인

객체에 데이터가 없는지 확인하는 또 다른 쉬운 방법은Undescore.js 라이브러리를 사용하는 것입니다. 몇 가지 유용한 방법이있는 JavaScript 라이브러리입니다. 메서드 중 하나는_.isEmpty()로, 객체가 비어 있으면 true를 반환합니다.

<script>태그에 URL을 지정하여 라이브러리를 포함 할 수 있습니다. 또한 이름에서 알 수 있듯이 밑줄을 사용하여 기능에 액세스 할 수 있습니다.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Empty Object Example</title>

    <script src="https://cdn.jsdelivr.net/npm/underscore@1.11.0/underscore-min.js"></script>
  </head>
  <body>
    <script>
      const obj1 = { one: 1, two: 2, three: 3 };
      const obj2 = {};

      console.log("Is Obj1 Empty? : ", _.isEmpty(obj1));
      console.log("Is Obj2 Empty? : ", _.isEmpty(obj2));
    </script>
  </body>
</html>

출력:

Is Obj1 Empty? :  false
Is Obj2 Empty? :  true