u015173353@mail.ru,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<textarea id='text'>
{
"TaggedPDF": {
"Part": [
{
"H3": "Раздел",
"Sect": {
"Sect": [
{
"H4": "Таблица",
"P": [
"Состав",
"тип"
],
"Table": [
{
"TR": [
{
"TH": [
"Номер",
"Наименование",
"Ед. изм.",
"101",
"102",
"103",
"104"
]
},
{
"TH": [
"100",
"Затраты",
"ч"
],
"TD": [
"154",
"185",
"227",
"0,319"
]
},
{
"TH": [
"0101",
"разряд",
"-"
],
"TD": [
"3,8",
"3,8",
"3,8",
"3,8"
]
},
{
"TH": [
"0100",
"Затраты",
"ч"
],
"TD": [
"0,8",
"0,965",
"0,175",
"0,66"
]
},
{
"TH": [
"",
"МЕХАНИЗМЫ",
""
],
"TD": [
"",
"",
"",
""
]
},
{
"TH": "0302",
"TD": [
"Топор",
"ч",
"16",
"193",
"235",
"332"
]
},
{
"TH": "0204",
"TD": [
"Молоток",
"ч",
"16",
"193",
"235",
"332"
]
}
]
}
]
},
{
"H4": "Таблица",
"P": "Состав",
"Table": [{
"TR": [
{
"TH": [
"Номер",
"Наименование",
"Ед. изм.",
"701"
]
},
{
"TD": [
"0100",
"Затраты",
"ч",
"71"
]
},
{
"TD": [
"",
"МЕХАНИЗМЫ",
"",
""
]
},
{
"TD": [
"0102",
"Молоток",
"ч",
"71"
]
}
]
}]
}
]
}
}
]
}
}
</textarea>
<script>
window.onload = parse; // при загрузке
function line(a){
// console.log ('key=Table содержимое ', a); // рабочий вариант в 2х таблицах
console.log('key=Table TR ', a[0].TR); // для второй таблицы должно работать но нет
}
function traverse(jsonObj){
if (jsonObj !== null && typeof jsonObj == "object" ) { // проверка на объект
Object.entries(jsonObj).forEach(([key, value]) => {
// перебираем таблицы ключ значение
if (key=="Table") { //если ключ равняется Table
line(value); // обрабатываем дальше
}
traverse(value); // перебор вложения
});
}
}
function parse() {
let obj = JSON.parse(document.getElementById('text').value);
traverse(obj.TaggedPDF.Part[0].Sect.Sect); // выбираю нужную часть json
}
</script>
</body>
</html>