Initial commit
[yaffs-website] / node_modules / sass-graph / node_modules / lodash / take.js
1 var baseSlice = require('./_baseSlice'),
2     toInteger = require('./toInteger');
3
4 /**
5  * Creates a slice of `array` with `n` elements taken from the beginning.
6  *
7  * @static
8  * @memberOf _
9  * @since 0.1.0
10  * @category Array
11  * @param {Array} array The array to query.
12  * @param {number} [n=1] The number of elements to take.
13  * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
14  * @returns {Array} Returns the slice of `array`.
15  * @example
16  *
17  * _.take([1, 2, 3]);
18  * // => [1]
19  *
20  * _.take([1, 2, 3], 2);
21  * // => [1, 2]
22  *
23  * _.take([1, 2, 3], 5);
24  * // => [1, 2, 3]
25  *
26  * _.take([1, 2, 3], 0);
27  * // => []
28  */
29 function take(array, n, guard) {
30   if (!(array && array.length)) {
31     return [];
32   }
33   n = (guard || n === undefined) ? 1 : toInteger(n);
34   return baseSlice(array, 0, n < 0 ? 0 : n);
35 }
36
37 module.exports = take;