# array-flat-polyfill

> A polyfill for Array.prototype.flat and Array.prototype.flatMap

Latest version **1.0.1** (published 2019-04-12) · CC0-1.0 license · 0 weekly downloads

## Install

```sh
npm install array-flat-polyfill
pnpm add array-flat-polyfill
yarn add array-flat-polyfill
bun add array-flat-polyfill
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.1 |
| Published | 2019-04-12 |
| First published | 2018-11-28 |
| Weekly downloads | 0 |
| License | CC0-1.0 |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Node | >=6.0.0 |
| Dependencies | 0 |
| Unpacked size | 11 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 58 |
| Author | Jonathan Neal |
| Maintainers | jonathantneal |
| Keywords | javascript, js, flat, flatMap, concat, flatten |

## Links

- npm: https://www.npmjs.com/package/array-flat-polyfill
- Repository: https://github.com/jonathantneal/array-flat-polyfill
- Homepage: https://github.com/jonathantneal/array-flat-polyfill#readme
- Issues: https://github.com/jonathantneal/array-flat-polyfill/issues
- npm.io page: https://npm.io/package/array-flat-polyfill

## Alternatives

- [@mapbox/jsonlint-lines-primitives](https://npm.io/package/@mapbox/jsonlint-lines-primitives.md) — 5.3M weekly downloads
- [reftools](https://npm.io/package/reftools.md) — 3.5M weekly downloads
- [@hey-api/openapi-ts](https://npm.io/package/@hey-api/openapi-ts.md) — 3.5M weekly downloads
- [@mapbox/geojson-rewind](https://npm.io/package/@mapbox/geojson-rewind.md) — 2.4M weekly downloads
- [turbo-stream](https://npm.io/package/turbo-stream.md) — 1.7M weekly downloads

## Recent versions

- 1.0.1 (latest) — 2019-04-12
- 1.0.0 — 2018-11-28

## README

# Array Flat Polyfill [<img src="http://jonathantneal.github.io/js-logo.svg" alt="" width="90" height="90" align="right">][Array Flat Polyfill]

[![NPM Version][npm-img]][npm-url]
[![Build Status][cli-img]][cli-url]
[![Support Chat][git-img]][git-url]

[Array Flat Polyfill] is a polyfill for `Array.prototype.flat` and
`Array.prototype.flatMap`, following the [TC39 Proposal].

```sh
npm install array-flat-polyfill --save
```

The `flat()` method creates a new array with all sub-array elements
concatenated into it recursively up to the specified depth.

```js
[1, 2, [3, 4, [5, 6]]].flat(2) // [1, 2, 3, 4, 5, 6]
```

The `flatMap()` method maps each element using a mapping function, then
flattens the result into a new array.

```js
[1, 2, 3, 4].flatMap(x => [x * 2]); // [2, 4, 6, 8]
```

The script is 261 bytes when minified and gzipped. It works in all browsers,
going as far back as Internet Explorer 9.

## Usage

For immediate usage, add this script to your document:

```html
<script src="https://unpkg.com/array-flat-polyfill"></script>
```

For Node usage, add [Array Flat Polyfill] to your project:

```sh
npm install array-flat-polyfill
```

Include [Array Flat Polyfill] in your JS:

```js
import 'array-flat-polyfill';
```

[cli-img]: https://img.shields.io/travis/jonathantneal/array-flat-polyfill/master.svg
[cli-url]: https://travis-ci.org/jonathantneal/array-flat-polyfill
[git-img]: https://img.shields.io/badge/support-chat-blue.svg
[git-url]: https://gitter.im/postcss/postcss
[npm-img]: https://img.shields.io/npm/v/array-flat-polyfill.svg
[npm-url]: https://www.npmjs.com/package/array-flat-polyfill

[Array Flat Polyfill]: https://github.com/jonathantneal/array-flat-polyfill
[TC39 Proposal]: https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flat

---
_Source: https://npm.io/package/array-flat-polyfill · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
