JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<body>
<table>
<tr>
<th>Name</th>
<th>Gender</th>
<th>Age</th>
</tr>
<tr>
<td>John</td>
<td>M</td>
<td>18</td>
</tr>
<tr>
<td>Alice</td>
<td>W</td>
<td>28</td>
</tr>
</table>
<script>
(function() {
var jsonArr = [];
var obj = {};
var thNum = document.getElementsByTagName('th').length;
var arrLength = document.getElementsByTagName('td').length;
for(i = 0; i < arrLength; i++){
if(i%3 === 0){
obj = {};
}
var head = document.getElementsByTagName('th')[i%thNum].innerHTML;
var content = document.getElementsByTagName('td')[i].innerHTML;
obj[head] = content;
if(head === 'Age'){
jsonArr.push(obj);
}
}
document.write("<br>"+JSON.stringify(jsonArr));
})();
</script>
</body>
</html>