[javascript] 객체의 속성 값을 기준으로 해당 값을 가진 객체 찾기

자바스크립트에서는 객체를 다룰 때 속성값을 기준으로 해당 값을 가진 객체를 찾을 수 있습니다. 이를 위해서는 객체를 순회하며 조건을 만족하는 객체를 찾는 방법을 사용해야 합니다.

아래는 주어진 객체들에서 특정 속성의 값과 일치하는 객체를 찾는 예제 코드입니다.

const users = [
  { name: 'Alice', age: 28, city: 'Seoul' },
  { name: 'Bob', age: 32, city: 'Busan' },
  { name: 'Charlie', age: 25, city: 'Seoul' },
  { name: 'David', age: 31, city: 'Jeju' }
];

function findObjectByProperty(objects, property, value) {
  for (let i = 0; i < objects.length; i++) {
    if (objects[i][property] === value) {
      return objects[i];
    }
  }
  return null;
}

const foundUser = findObjectByProperty(users, 'age', 25);
console.log(foundUser);

위 예제 코드에서 findObjectByProperty 함수는 주어진 객체 배열 objects, 찾고자 하는 속성 property와 값 value를 받아 순회하면서 조건을 만족하는 객체를 찾습니다. 만약 해당 값을 가진 객체를 찾으면 해당 객체를 반환하고, 찾지 못하면 null을 반환합니다.

위 코드에서는 users라는 객체 배열에서 age 속성의 값이 25인 객체를 찾아 반환합니다. 따라서, 결괏값으로 { name: 'Charlie', age: 25, city: 'Seoul' }가 출력됩니다.

이와 같은 방법을 사용하면 어떤 속성의 값이나 여러 가지 조건에 따라 객체를 찾을 수 있습니다.

참고 자료:

코드 작성에 도움을 주신 이승현님께 감사드립니다.