UNPKG

1.01 kBJavaScriptView Raw
1var _curry2 =
2/*#__PURE__*/
3require("./internal/_curry2");
4
5var drop =
6/*#__PURE__*/
7require("./drop");
8/**
9 * Returns a new list containing the last `n` elements of the given list.
10 * If `n > list.length`, returns a list of `list.length` elements.
11 *
12 * @func
13 * @memberOf R
14 * @since v0.16.0
15 * @category List
16 * @sig Number -> [a] -> [a]
17 * @sig Number -> String -> String
18 * @param {Number} n The number of elements to return.
19 * @param {Array} xs The collection to consider.
20 * @return {Array}
21 * @see R.dropLast
22 * @example
23 *
24 * R.takeLast(1, ['foo', 'bar', 'baz']); //=> ['baz']
25 * R.takeLast(2, ['foo', 'bar', 'baz']); //=> ['bar', 'baz']
26 * R.takeLast(3, ['foo', 'bar', 'baz']); //=> ['foo', 'bar', 'baz']
27 * R.takeLast(4, ['foo', 'bar', 'baz']); //=> ['foo', 'bar', 'baz']
28 * R.takeLast(3, 'ramda'); //=> 'mda'
29 */
30
31
32var takeLast =
33/*#__PURE__*/
34_curry2(function takeLast(n, xs) {
35 return drop(n >= 0 ? xs.length - n : 0, xs);
36});
37
38module.exports = takeLast;
\No newline at end of file