From a 1D array [1,2,3], create a 1D array of all 2D combinations 11,12,13,...32,33. I can do it, it's just a bit ugly. Is there a neater way to write it?
const intArr = [1,2,3];
const data = intArr.map(v1 => 
    intArr.map(v2 => v1 + ',' + v2)
).flat();
d3.select('ul')
    .selectAll('li')
    .data(data)
    .enter()
    .append('li')
    .text(d => d)<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>
<ul></ul> 
    