JSFiddle - React, Tailwind, and code Playground
JavaScript
var objects = [
{filename:"green$1"},
{filename:"green$2"},
{filename:"green$3"},
{filename:"green$4"},
{filename:"blue$1$1"},
{filename:"blue$1"},
{filename:"red$1"},
{filename:"green$5"},
]
var groups = [];
for (var i = 0; i < objects.length; i++){
var filename = objects[i].filename
var n = filename.lastIndexOf("$");
var groupName = filename.substring(0, n);
if (groups[groupName] != undefined)
groups[groupName].push(objects[i]);
else {
groups[groupName] = [];
groups[groupName].push(objects[i]);
}
}
console.log(groups);