[javascript] JSON 데이터에서 속성값으로 중복 제거하기
JSON(JavaScript Object Notation) 데이터에서 특정 속성의 값이 중복되는 경우, 이를 제거하는 방법에 대해 알아보겠습니다.
JSON 데이터 예시
먼저, 다음과 같은 예시의 JSON 데이터를 가정해봅시다.
{
"employees": [
{ "id": 1, "name": "John Doe" },
{ "id": 2, "name": "Jane Smith" },
{ "id": 3, "name": "John Doe" }
]
}
위의 JSON 데이터에서 “name” 속성값에는 “John Doe”와 “Jane Smith”가 중복됩니다.
중복 제거하기
JavaScript에서 중복된 속성값을 가진 요소를 제거하려면, Set 데이터 구조와 Array의 내장 메소드를 사용할 수 있습니다. 아래는 중복된 “name” 값을 제거하는 예시 코드입니다.
const data = {
"employees": [
{ "id": 1, "name": "John Doe" },
{ "id": 2, "name": "Jane Smith" },
{ "id": 3, "name": "John Doe" }
]
};
const uniqueNames = [...new Set(data.employees.map(employee => employee.name))];
const uniqueEmployees = data.employees.filter(employee =>
uniqueNames.includes(employee.name)
);
const uniqueData = { "employees": uniqueEmployees };
console.log(uniqueData);
위 코드에서 Set
을 이용하여 중복을 제거하고, filter
메소드를 사용하여 유니크한 값을 가진 요소들을 필터링합니다.
결과
위의 코드를 실행하면, 중복된 “John Doe”의 값이 제거된 결과를 얻을 수 있습니다.
결론
JSON 데이터에서 속성값으로 중복을 제거하는 방법에 대해 알아보았습니다. JavaScript에서는 Set을 이용하여 중복을 제거하고, filter 메소드를 사용하여 중복된 값을 제거할 수 있습니다.