// array.ext.ts
declare global {
interface Array<T> {
flatten(): Array<any>;
}
}
Array.prototype.flatten = function (): Array<any> {
return this.reduce((a, b) => a.concat(Array.isArray(b) ? b.flatten() : b), []);
};
Import array.ext.ts file at main.ts(Angular).
// main.ts
import { enableProdMode } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app/app.module';
import './app/utils/array.ext';
platformBrowserDynamic()
.bootstrapModule(AppModule)
.catch(err => console.error(err));