var arr = [[1,2,3],[[4],[5,[6,7],[8,9]],10]]; function fn(a) { for (; a.length != (a = [].concat.apply([], a)).length;); return a }; alert(JSON.stringify(fn(arr)));