const randomStr = () => Array
.from(
{length: 0|Math.random()*4+3},
() => String.fromCharCode(0|Math.random()*26+97)
)
.join(''),
src = Array.from(
{length: 1000},
() => Array.from(
{length: 0|Math.random()*5+3},
() => ({
[randomStr()]: 0|Math.random()*100,
[randomStr()]: 0|Math.random()*100
})
)
)
const flatten = arr =>
arr.flat()
flatten(src)
const flatten = arr =>
arr.reduce((acc,arr) => (acc.push(...arr), acc), [])
flatten(src)
const flatten = arr =>
arr.reduce((acc,arr) => acc.concat(arr), [])
flatten(src)