1 | var filter = require('./filter');
|
2 |
|
3 | /**
|
4 | * @return {array} Array of unique items
|
5 | */
|
6 | function unique(arr, compare){
|
7 | compare = compare || isEqual;
|
8 | return filter(arr, function(item, i, arr){
|
9 | var n = arr.length;
|
10 | while (++i < n) {
|
11 | if ( compare(item, arr[i]) ) {
|
12 | return false;
|
13 | }
|
14 | }
|
15 | return true;
|
16 | });
|
17 | }
|
18 |
|
19 | function isEqual(a, b){
|
20 | return a === b;
|
21 | }
|
22 |
|
23 | module.exports = unique;
|
24 |
|
25 |
|