본문 바로가기

데브코스

[JS] Object.keys()

객체가 빈 객체인지 확인하기

const obj1 = {}
const obj2 = { message: "안 빔" }
const num = 1
const str1 = 'one' // 문자열도 객체
const str2 = ''

function isEmpty(obj) {
  if (Object.keys(obj).length === 0) {
    return true;
  }
  else {
    return false;
  }
}

console.log(isEmpty(obj1)) //true
console.log(isEmpty(obj2)) //false
console.log(isEmpty(num))  //true
console.log(isEmpty(str1)) //false
console.log(isEmpty(str2)) //true

 

➡️ Object.keys() 는 객체의 key 값을 반환한다. Object.keys(객체이름) 했을 때 길이가 0, 즉 key 값이 하나도 없으면 빈 객체라는 것을 의미한다. 매개변수에 숫자를 입력했을 때는 이상한 값이 나오고, 객체일 경우에만 올바른 값을 얻을 수 있다. (문자열도 객체)