JSFiddle - React, Tailwind, and code Playground
HTML
<pre id="output"></pre>
JavaScript
var data = [
{row_id: "20003859", expense_id: "429", tax_select: "tax1", tax_id: "1", tax_name: "GST 5%", tax_no: "", tax_value: "13.23"},
{row_id: "20003859", expense_id: "429", tax_select: "tax2", tax_id: "3", tax_name: "QST 9.975%", tax_no: "", tax_value: "26.38"},
{row_id: "20003840", expense_id: "409", tax_select: "tax1", tax_id: "1", tax_name: "GST 5%", tax_no: "", tax_value: "13.23"},
{row_id: "20003840", expense_id: "409", tax_select: "tax2", tax_id: "3", tax_name: "QST 9.975%", tax_no: "", tax_value: "26.38"},
{row_id: "20003870", expense_id: "419", tax_select: "tax1", tax_id: "2", tax_name: "HST 13%", tax_no: "", tax_value: "34.39"}
];
var totals = data.reduce(function(c,x){
if(!c[x.tax_id]) c[x.tax_id] = {
tax_name: x.tax_name,
tax_id: x.tax_id,
total_tax: 0
};
c[x.tax_id].total_tax += Number(x.tax_value);
return c;
}, {});
var text = '';
for(var taxId in totals){
text += totals[taxId].tax_name +
': ' + totals[taxId].total_tax +
'\n';
}
$('#output').text(text);