JSFiddle - React, Tailwind, and code Playground
JavaScript
var table = [
{group:"a", stuff:"new"},
{group:"a", stuff:"old"},
{group:"a", stuff:"new"},
{group:"b", stuff:"newOld"},
{group:"b", stuff:"old"},
{group:"b", stuff:"old"},
{group:"c", stuff:"new"},
{group:"c", stuff:"old"},
{group:"c", stuff:"newOld"},
];
var groups = {all:{}};
table.forEach(function(a){
if (!groups[a.group]){ groups[a.group] = {}; }
var stuff = groups["all"][a.stuff];
groups["all"][a.stuff] = !stuff ? 1 : ++stuff;
stuff = groups[a.group][a.stuff];
groups[a.group][a.stuff] = !stuff ? 1 : ++stuff;
});
console.log("Direct Call: "+Object.keys(groups.a));
var selected = "a";
console.log("Variable Pass "+Object.keys(groups.selected));