предполагая интерфейс, такой как:
interface CustomNode {
id: string;
children: CustomNode[];
}
Если у меня есть такой объект, как:
nodes: CustomNode[] = [
{
id: 'A',
children: [
{
id: 'B',
children: [
{
id: 'C',
children: [
{
id: 'D',
children: []
},
{
id: 'E',
children: []
}
]
}
]
}
]
}
]
, как я могу создать функцию, которая удаляет данный 'CustomNode' и его дети?
Я предпочитаю решение Typescript / ES6, но меня устраивает любое общее решение (например, Typescript, Javascript, ES, зависимости, такие как loda sh, et c)
например, как я могу удалить CustomNode с идентификатором 'C' и его дочерними элементами?
nodes = removeIfExists(nodes, 'C');
removeIfExists(nodes: CustomNode[], removeId: string) {
// ...
}