1.3.2 • Published 8 months ago

array.prototype.flat v1.3.2

Weekly downloads
9,531,496
License
MIT
Repository
github
Last release
8 months ago

array.prototype.flat Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

An ES2019 spec-compliant Array.prototype.flat shim/polyfill/replacement that works as far down as ES3.

This package implements the es-shim API interface. It works in an ES3-supported environment and complies with the proposed spec.

Because Array.prototype.flat depends on a receiver (the this value), the main export takes the array to operate on as the first argument.

Getting started

npm install --save array.prototype.flat

Usage/Examples

var flat = require('array.prototype.flat');
var assert = require('assert');

var arr = [1, [2], [], 3, [[4]]];

assert.deepEqual(flat(arr, 1), [1, 2, 3, [4]]);
var flat = require('array.prototype.flat');
var assert = require('assert');
/* when Array#flat is not present */
delete Array.prototype.flat;
var shimmedFlat = flat.shim();

assert.equal(shimmedFlat, flat.getPolyfill());
assert.deepEqual(arr.flat(), flat(arr));
var flat = require('array.prototype.flat');
var assert = require('assert');
/* when Array#flat is present */
var shimmedIncludes = flat.shim();

var mapper = function (x) { return [x, 1]; };

assert.equal(shimmedIncludes, Array.prototype.flat);
assert.deepEqual(arr.flat(mapper), flat(arr, mapper));

Tests

Simply clone the repo, npm install, and run npm test

eslint-plugin-importjsx-ast-utilsenzymeairbnb-js-shimscrud-spuereasy-select-rnj-crud-vue3killi8n-react-native-fast-image@icanpm/api-master@arisageha/react-lazyload@arisageha/react-lazyload-fix@almeidaa/mscl-crud-asobanking-service-tsbb-chatgql_din_modmutasi-bca@jttechnic/interpreterant-crud-nextaso-admin-nextaso.crudcogoportutilsuncoded-connect@khalitovadel/abstract-repository@respondea/cordova-plugin-v-inappbrowser@saaspe/componentsexpand-react-bridgeopea-bootstraapluminos-ui-coresklif-ui-kitsklif-api@everything-registry/sub-chunk-1165jawwy-sdkjawwy_gamification_release@deepakorg/test@deepak757/testreact-native-sphereuisphereuijawwy_libraryreact-native-credit-card-pkgp149-tablesklif-uimachinebeemrcapsreact-native-jawwy_samplefaturohmanfawaterak-online-paymentfawatrak-online-paymentfbkocakferlinanons23fernandotorest45falcata-appfixed_form_builderfluent.adflow.reactnativesdkfluent.adflow.reactnativesdk-alphafn-lib-exampleflaresssfrdrk-js-semaphorefranklampard45front-end-engineeringelviraelvyenefti-galerieslint-changed-sinceerikoalames-react-bridgeerlocogonzales08epm-npm-tsceslint-plugin-import-fix-is-scopedeslint-plugin-import-order-allestehsusueslint-plugin-templewallet-testex-ikon-components-libraryetdahsusahevanutilsimamihza32ilhamagungip_address_infoip-designintegrity-mattersio-crud-vuehoteadrop-menu-nav-bardskcorenewdynamics-contracts-xeditorjs_forkededitor.js-custom-multiple-selectedgriffin-ui-librarygrids-over-polygongrtaudahgraphql-gateway@expertcomptabledev/impots.gouv.bot@esmkit/mongoose-virtuals@eliteswap/token-lists@epigraph/epigraph-analytics@epie/bi-crud@enhanced-dom/gatsby-wavesgassefalsgassefals-2
1.3.2

8 months ago

1.3.1

1 year ago

1.3.0

2 years ago

1.2.5

3 years ago

1.2.4

3 years ago

1.2.3

4 years ago

1.2.2

5 years ago

1.2.1

6 years ago