Skip to content

es-shims/Array.prototype.reverse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Mar 4, 2025
750333e · Mar 4, 2025

History

9 Commits
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025
Mar 4, 2025

Repository files navigation

array.prototype.reverse Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

An ES spec-compliant Array.prototype.reverse 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 spec.

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

Example

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

var a = [1, 2, 3];
assert.deepEqual(reverse(a), [3, 2, 1]);
assert.deepEqual(a, [3, 2, 1]);
var reverse = require('array.prototype.reverse');
var assert = require('assert');
/* when Array#reverse is not present */
delete Array.prototype.reverse;
var shimmed = reverse.shim();
assert.equal(shimmed, reverse.getPolyfill());
assert.equal(shimmed, Array.prototype.reverse);
assert.deepEqual([1, 2, 3].reverse(), reverse([1, 2, 3]));
var reverse = require('array.prototype.reverse');
var assert = require('assert');
/* when Array#reverse is present */
var shimmed = reverse.shim();
assert.equal(shimmed, Array.prototype.reverse);
assert.deepEqual([1, 2, 3].reverse(), reverse([1, 2, 3]));

Tests

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