@zitterorg/odit-quae-asperiores v3.4.30
@zitterorg/odit-quae-asperiores
An ES7/ES2016 spec-compliant Array.prototype.includes
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.includes
depends on a receiver (the this
value), the main export takes the array to operate on as the first argument.
Engines that need this package include:
- IE (all versions)
- Safari < 9
- Firefox < 43, and 99-101
- Chrome < 47
- Edge < 14
- node < 6
Getting started
npm install --save @zitterorg/odit-quae-asperiores
Usage
Basic usage: includes(array, value, fromIndex=0)
var includes = require('@zitterorg/odit-quae-asperiores');
var assert = require('assert');
var arr = [ 'one', 'two' ];
includes(arr, 'one'); // true
includes(arr, 'three'); // false
includes(arr, 'one', 1); // false
Example
var arr = [
1,
'foo',
NaN,
-0
];
assert.equal(arr.indexOf(0) > -1, true);
assert.equal(arr.indexOf(-0) > -1, true);
assert.equal(includes(arr, 0), true);
assert.equal(includes(arr, -0), true);
assert.equal(arr.indexOf(NaN) > -1, false);
assert.equal(includes(arr, NaN), true);
assert.equal(includes(arr, 'foo', 0), true);
assert.equal(includes(arr, 'foo', 1), true);
assert.equal(includes(arr, 'foo', 2), false);
/* when Array#includes is not present */
delete Array.prototype.includes;
var shimmedIncludes = includes.shim();
assert.equal(shimmedIncludes, includes.getPolyfill());
assert.equal(arr.includes('foo', 1), includes(arr, 'foo', 1));
/* when Array#includes is present */
var shimmedIncludes = includes.shim();
assert.equal(shimmedIncludes, Array.prototype.includes);
assert.equal(arr.includes(1, 'foo'), includes(arr, 1, 'foo'));
Tests
Simply clone the repo, npm install
, and run npm test
8 days ago
10 days ago
9 days ago
12 days ago
11 days ago
15 days ago
14 days ago
13 days ago
20 days ago
19 days ago
27 days ago
25 days ago
26 days ago
23 days ago
24 days ago
21 days ago
22 days ago
18 days ago
17 days ago
16 days ago
28 days ago
29 days ago
1 month ago
30 days ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago