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
| var baseSlice = require('./_baseSlice'),
| toInteger = require('./toInteger');
|
| /**
| * Creates a slice of `array` with `n` elements taken from the beginning.
| *
| * @static
| * @memberOf _
| * @since 0.1.0
| * @category Array
| * @param {Array} array The array to query.
| * @param {number} [n=1] The number of elements to take.
| * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
| * @returns {Array} Returns the slice of `array`.
| * @example
| *
| * _.take([1, 2, 3]);
| * // => [1]
| *
| * _.take([1, 2, 3], 2);
| * // => [1, 2]
| *
| * _.take([1, 2, 3], 5);
| * // => [1, 2, 3]
| *
| * _.take([1, 2, 3], 0);
| * // => []
| */
| function take(array, n, guard) {
| if (!(array && array.length)) {
| return [];
| }
| n = (guard || n === undefined) ? 1 : toInteger(n);
| return baseSlice(array, 0, n < 0 ? 0 : n);
| }
|
| module.exports = take;
|
|