Для вывода иерархии массива с неизвестной вложенностью, где элементы имеют значение workControl равное 'intermediate', можно использовать рекурсивную функцию.
Вот пример кода на JavaScript для демонстрации работы:
```javascript
// Входной массив с неизвестной вложенностью
const data = [
{
id: 1,
name: 'Item 1',
workControl: 'intermediate',
children: [
{
id: 2,
name: 'Item 1.1',
workControl: 'intermediate',
children: []
}
]
},
{
id: 3,
name: 'Item 2',
workControl: 'intermediate',
children: [
{
id: 4,
name: 'Item 2.1',
workControl: 'intermediate',
children: [
{
id: 5,
name: 'Item 2.1.1',
workControl: 'intermediate',
children: []
}
]
}
]
},
{
id: 6,
name: 'Item 3',
workControl: 'low',
children: [
{
id: 7,
name: 'Item 3.1',
workControl: 'high',
children: []
}
]
}
];
// Рекурсивная функция для вывода иерархии массива
function printHierarchy(data, level = 0) {
data.forEach(item => {
if (item.workControl === 'intermediate') {
console.log(' '.repeat(level * 2) + item.name);
}
printHierarchy(item.children, level + 1);
});
}
// Вызов функции для вывода иерархии
printHierarchy(data);
```
Когда вы запустите этот код в вашей среде разработки или на CodePen, вы увидите, как выводится иерархия элементов с workControl равным 'intermediate' из входного массива. Вывод будет иметь иерархическую структуру, отображая уровни вложенности элементов с помощью отступов.