Skip to content

Instantly share code, notes, and snippets.

@maroun-baydoun
Last active March 16, 2021 22:40
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maroun-baydoun/ec07608580113d132434698430e61db3 to your computer and use it in GitHub Desktop.
Save maroun-baydoun/ec07608580113d132434698430e61db3 to your computer and use it in GitHub Desktop.
Flatten an array of arrays in TypeScript
const flatten = < T = any > (arr: T[]) => {
const reducer = < T = any > (prev: T[], curr: T | T[]) => {
if (curr.constructor !== Array) {
return [...prev, curr];
}
return curr.reduce(reducer, prev);
};
return arr.reduce(reducer, []);
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment