JSFiddle - React, Tailwind, and code Playground

JavaScript

function flatten(a) {
    var r = [].concat.apply([], a);
    return r.some(Array.isArray) ? flatten(r) : r;
}

function foo() {
  return flatten([].slice.call(arguments));
}

console.log( foo(1, [2, 3, [4]]) );