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
| /**
| * Creates an array with all falsey values removed. The values `false`, `null`,
| * `0`, `""`, `undefined`, and `NaN` are falsey.
| *
| * @static
| * @memberOf _
| * @since 0.1.0
| * @category Array
| * @param {Array} array The array to compact.
| * @returns {Array} Returns the new array of filtered values.
| * @example
| *
| * _.compact([0, 1, false, 2, '', 3]);
| * // => [1, 2, 3]
| */
| function compact(array) {
| var index = -1,
| length = array == null ? 0 : array.length,
| resIndex = 0,
| result = [];
|
| while (++index < length) {
| var value = array[index];
| if (value) {
| result[resIndex++] = value;
| }
| }
| return result;
| }
|
| module.exports = compact;
|
|