JSFiddle - React, Tailwind, and code Playground
JavaScript
const input = [1, 2, 3, [4, 5, 6, [8, 9, 10]], 11, [12, 13, 14]];
const flatten = (arr, depth) =>
depth === 0 ? arr :
arr.reduce((acc, curr) =>
Array.isArray(curr) ? acc.concat(flatten(curr, depth - 1)) :
acc.concat(curr), [])
console.log(flatten(input, 3));