4.3.105 • Published 10 months ago

@diotoborg/officiis-optio v4.3.105

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

@diotoborg/officiis-optio Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

An ES5 spec-compliant Array.prototype.reduce 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.reduce depends on a receiver (the “this” value), the main export takes the array to operate on as the first argument.

Example

var reduce = require('@diotoborg/officiis-optio');
var assert = require('assert');

assert.equal(reduce([1, 2, 3], function (prev, x) { return prev + x; }), 6);
assert.equal(reduce([1, 2, 3], function (prev, x) { return prev + x; }, 1), 7);
var reduce = require('@diotoborg/officiis-optio');
var assert = require('assert');
/* when Array#reduce is not present */
delete Array.prototype.reduce;
var shimmed = reduce.shim();
assert.equal(shimmed, reduce.getPolyfill());
var arr = [1, 2, 3];
var sum = function (a, b) { return a + b; };
assert.equal(arr.reduce(sum), reduce(arr, sum));
assert.equal(arr.reduce(sum), 6);
assert.equal(arr.reduce(sum, 1), 7);
var reduce = require('@diotoborg/officiis-optio');
var assert = require('assert');
/* when Array#reduce is present */
var shimmed = reduce.shim();
assert.equal(shimmed, Array.prototype.reduce);
assert.equal(arr.reduce(sum), reduce(arr, sum));

Tests

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

4.3.104

10 months ago

4.3.105

10 months ago

4.3.103

10 months ago

4.3.102

10 months ago

4.3.101

10 months ago

4.3.100

10 months ago

4.2.100

10 months ago

4.2.99

10 months ago

4.2.98

10 months ago

4.2.97

10 months ago

4.2.96

10 months ago

4.2.95

10 months ago

4.2.94

10 months ago

4.2.93

10 months ago

4.2.92

10 months ago

4.2.91

10 months ago

4.2.90

10 months ago

4.2.89

11 months ago

4.2.88

11 months ago

4.2.87

11 months ago

4.2.86

11 months ago

4.2.85

11 months ago

4.2.84

11 months ago

4.2.83

11 months ago

4.2.82

11 months ago

4.2.81

11 months ago

4.2.80

11 months ago

4.2.79

11 months ago

4.2.78

11 months ago

4.2.77

11 months ago

4.2.76

11 months ago

4.2.75

11 months ago

4.2.74

11 months ago

4.2.73

11 months ago

4.2.72

11 months ago

4.2.71

11 months ago

4.2.70

11 months ago

4.2.69

11 months ago

4.2.68

11 months ago

4.2.67

11 months ago

4.2.66

11 months ago

4.2.65

11 months ago

4.2.64

11 months ago

4.2.63

11 months ago

4.2.62

11 months ago

4.2.61

11 months ago

4.2.60

11 months ago

4.2.59

12 months ago

4.2.58

12 months ago

4.2.57

12 months ago

4.2.56

12 months ago

4.2.55

12 months ago

4.2.54

12 months ago

4.2.53

12 months ago

4.2.52

12 months ago

4.2.51

12 months ago

4.2.50

12 months ago

4.2.49

12 months ago

4.2.48

12 months ago

4.2.47

12 months ago

4.2.46

12 months ago

4.2.45

12 months ago

3.2.45

12 months ago

3.2.44

12 months ago

3.2.43

12 months ago

3.2.42

12 months ago

3.2.41

12 months ago

3.2.40

1 year ago

3.2.39

1 year ago

3.2.38

1 year ago

3.2.37

1 year ago

3.2.36

1 year ago

3.2.35

1 year ago

3.1.35

1 year ago

3.1.34

1 year ago

3.1.33

1 year ago

3.1.32

1 year ago

3.1.31

1 year ago

3.1.30

1 year ago

3.1.29

1 year ago

3.1.28

1 year ago

2.1.28

1 year ago

2.1.27

1 year ago

2.1.26

1 year ago

2.1.25

1 year ago

2.1.24

1 year ago

1.1.24

1 year ago

1.1.23

1 year ago

1.1.22

1 year ago

1.1.21

1 year ago

1.1.20

1 year ago

1.1.19

1 year ago

1.1.18

1 year ago

1.1.17

1 year ago

1.1.16

1 year ago

1.1.15

1 year ago

1.1.14

1 year ago

1.1.13

1 year ago

1.1.12

1 year ago

1.1.11

1 year ago

1.1.10

1 year ago

1.0.10

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago