[javascript] 객체 속성 순회 시 유효성 검사하기

자바스크립트에서 객체의 속성을 순회하면서 유효성을 검사하는 것은 매우 일반적인 작업입니다. 객체를 순회하면서 특정 조건을 만족하는지 확인하는 방법을 알아보겠습니다.

Object.keys 및 forEach 메서드 사용

가장 일반적인 방법은 Object.keys 메서드를 사용하여 객체의 속성을 가져온 후 forEach 메서드를 사용하여 각 속성을 순회하는 것입니다. 아래는 이러한 방법을 사용한 예제 코드입니다.

const obj = {
  name: 'John',
  age: 30,
  email: 'john@example.com'
};

Object.keys(obj).forEach(key => {
  const value = obj[key];

  // 유효성 검사
  if (key === 'age' && (typeof value !== 'number' || value < 0)) {
    console.error('나이 값이 유효하지 않습니다.');
  }
});

위 코드에서는 Object.keys를 사용하여 obj 객체의 속성을 배열로 가져온 후, forEach 메서드를 사용하여 각 속성의 유효성을 검사합니다.

for…in 문 사용

또 다른 방법은 for...in 문을 사용하여 객체의 속성을 직접 순회하는 것입니다. 아래는 for...in 문을 사용한 예제 코드입니다.

const obj = {
  name: 'John',
  age: 30,
  email: 'john@example.com'
};

for (let key in obj) {
  if (obj.hasOwnProperty(key)) {
    const value = obj[key];

    // 유효성 검사
    if (key === 'age' && (typeof value !== 'number' || value < 0)) {
      console.error('나이 값이 유효하지 않습니다.');
    }
  }
}

for...in 문을 사용하여 객체의 속성을 순회하면서 hasOwnProperty 메서드로 상속된 속성을 제외할 수 있습니다.

요약

자바스크립트에서 객체의 속성을 순회하면서 유효성을 검사하는 방법은 다양합니다. Object.keysforEach 메서드, 그리고 for...in 문을 활용하여 객체 속성의 유효성을 검사할 수 있습니다.

이러한 방법을 사용하여 객체의 속성을 안전하게 순회하고 유효성을 검사할 수 있습니다. 유효성 검사를 통해 안정적인 코드를 작성할 수 있도록 노력해야 합니다.

참고 자료