JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://raw.github.com/square/crossfilter/master/crossfilter.min.js"></script>
<div id="out"></div>

CSS

p {
  padding: 1em;
  border-bottom: 1px solid #ccc;
}

JavaScript

var cf =[
    { cat: "A", val:1 },
    { cat: "B", val:2 },
    { cat: "A", val:11 },
    { cat: "B", val:5 },
    { cat: "A", val:3 },
    { cat: "B", val:2 },
    { cat: "A", val:11 },
    { cat: "B", val:100 }
];

var combos = cf.sort(function(a,b) { 
   if(a.cat == b.cat) return a.val < b.val ? -1 : 1;
   return a.cat < b.cat ? -1 : 1;
});


$('#out').html(JSON.stringify(combos));