[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' }
가 출력됩니다.
이와 같은 방법을 사용하면 어떤 속성의 값이나 여러 가지 조건에 따라 객체를 찾을 수 있습니다.
참고 자료:
코드 작성에 도움을 주신 이승현님께 감사드립니다.