Blame view

node_modules/arr-union/README.md 3.48 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
  # arr-union [![NPM version](https://img.shields.io/npm/v/arr-union.svg)](https://www.npmjs.com/package/arr-union) [![Build Status](https://img.shields.io/travis/jonschlinkert/arr-union.svg)](https://travis-ci.org/jonschlinkert/arr-union)
  
  > Combines a list of arrays, returning a single array with unique values, using strict equality for comparisons.
  
  ## Install
  
  Install with [npm](https://www.npmjs.com/):
  
  ```sh
  $ npm i arr-union --save
  ```
  
  ## Benchmarks
  
  This library is **10-20 times faster** and more performant than [array-union](https://github.com/sindresorhus/array-union).
  
  See the [benchmarks](./benchmark).
  
  ```sh
  #1: five-arrays
    array-union x 511,121 ops/sec ±0.80% (96 runs sampled)
    arr-union x 5,716,039 ops/sec ±0.86% (93 runs sampled)
  
  #2: ten-arrays
    array-union x 245,196 ops/sec ±0.69% (94 runs sampled)
    arr-union x 1,850,786 ops/sec ±0.84% (97 runs sampled)
  
  #3: two-arrays
    array-union x 563,869 ops/sec ±0.97% (94 runs sampled)
    arr-union x 9,602,852 ops/sec ±0.87% (92 runs sampled)
  ```
  
  ## Usage
  
  ```js
  var union = require('arr-union');
  
  union(['a'], ['b', 'c'], ['d', 'e', 'f']);
  //=> ['a', 'b', 'c', 'd', 'e', 'f']
  ```
  
  Returns only unique elements:
  
  ```js
  union(['a', 'a'], ['b', 'c']);
  //=> ['a', 'b', 'c']
  ```
  
  ## Related projects
  
  * [arr-diff](https://www.npmjs.com/package/arr-diff): Returns an array with only the unique values from the first array, by excluding all… [more](https://www.npmjs.com/package/arr-diff) | [homepage](https://github.com/jonschlinkert/arr-diff)
  * [arr-filter](https://www.npmjs.com/package/arr-filter): Faster alternative to javascript's native filter method. | [homepage](https://github.com/jonschlinkert/arr-filter)
  * [arr-flatten](https://www.npmjs.com/package/arr-flatten): Recursively flatten an array or arrays. This is the fastest implementation of array flatten. | [homepage](https://github.com/jonschlinkert/arr-flatten)
  * [arr-map](https://www.npmjs.com/package/arr-map): Faster, node.js focused alternative to JavaScript's native array map. | [homepage](https://github.com/jonschlinkert/arr-map)
  * [arr-pluck](https://www.npmjs.com/package/arr-pluck): Retrieves the value of a specified property from all elements in the collection. | [homepage](https://github.com/jonschlinkert/arr-pluck)
  * [arr-reduce](https://www.npmjs.com/package/arr-reduce): Fast array reduce that also loops over sparse elements. | [homepage](https://github.com/jonschlinkert/arr-reduce)
  * [array-unique](https://www.npmjs.com/package/array-unique): Return an array free of duplicate values. Fastest ES5 implementation. | [homepage](https://github.com/jonschlinkert/array-unique)
  
  ## Contributing
  
  Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/arr-union/issues/new).
  
  ## Building docs
  
  Generate readme and API documentation with [verb](https://github.com/verbose/verb):
  
  ```sh
  $ npm i verb && npm run docs
  ```
  
  Or, if [verb](https://github.com/verbose/verb) is installed globally:
  
  ```sh
  $ verb
  ```
  
  ## Running tests
  
  Install dev dependencies:
  
  ```sh
  $ npm i -d && npm test
  ```
  
  ## Author
  
  **Jon Schlinkert**
  
  * [github/jonschlinkert](https://github.com/jonschlinkert)
  * [twitter/jonschlinkert](http://twitter.com/jonschlinkert)
  
  ## License
  
  Copyright © 2016 [Jon Schlinkert](https://github.com/jonschlinkert)
  Released under the [MIT license](https://github.com/jonschlinkert/arr-union/blob/master/LICENSE).
  
  ***
  
  _This file was generated by [verb](https://github.com/verbose/verb), v0.9.0, on February 23, 2016._