Object hasOwn

오브젝트에는 이미 hasOwnProperty라는 메서드가 존재한다.

const user = {
  name: "Tom",
};

console.log(user.hasOwnProperty("isAdmin"));
console.log(user.hasOwnProperty("name"));

false

true

하지만 hasOwn은 살짝 다르게 사용한다.

const user = {
  name: "Tom",
};

console.log(Object.hasOwn(user, "name"));
console.log(user.hasOwnProperty("name"));

true

true

같은 방식으로 사용되지만 Object.hasOwn을 대체제로 사용하길 권장한다고 documentation에 나와있다.

또한 다음과 같은 방식으로도 property를 체크할 수 있다.

const user = {
  name: "Tom",
};

console.log("name" in user);

true