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>