list[] 와 listAchildren[] 중 하나라도 겹치는 부분이 있는지 검사하는 것을 개선
interface List {
id: string;
parentId: string; // parentId가 데이터 모델링에 포함되어야 하는 것이 핵심
contents: any;
children?: List;
}
// e.g.,
const list: List[] = [
{
id: 'a1',
parentId: 'a',
contents: 12
},
{
id: 'a2',
parentId: 'a',
contents: 34
},
{
id: 'b8',
parentId: 'b',
contents: 11
},
]
const listAchildren: List[] = [
{
id: 'a1',
parentId: 'a',
contents: 12
},
{
id: 'a2',
parentId: 'a',
contents: 34
},
{
id: 'a3',
parentId: 'a',
contents: 56
},
{
id: 'a4',
parentId: 'a',
contents: 78
},
]
const listAId = "a"; // props로 전달 받음
const isIncluded = list.some((item) => item.parentId === listAId);
console.log(isIncluded);