Nested Array Generator

Medium

Solution

type MultidimensionalArray = (MultidimensionalArray | number)[];
 
export function* inorderTraversal(arr: MultidimensionalArray): Generator<number, void, unknown> {
  for (const value of arr) {
    if (Array.isArray(value)) {
      yield* inorderTraversal(value);
    } else {
      yield value;
    }
  }
}