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
38
39
40
41
42
43
| var arrayPush = require('./_arrayPush'),
| baseFlatten = require('./_baseFlatten'),
| copyArray = require('./_copyArray'),
| isArray = require('./isArray');
|
| /**
| * Creates a new array concatenating `array` with any additional arrays
| * and/or values.
| *
| * @static
| * @memberOf _
| * @since 4.0.0
| * @category Array
| * @param {Array} array The array to concatenate.
| * @param {...*} [values] The values to concatenate.
| * @returns {Array} Returns the new concatenated array.
| * @example
| *
| * var array = [1];
| * var other = _.concat(array, 2, [3], [[4]]);
| *
| * console.log(other);
| * // => [1, 2, 3, [4]]
| *
| * console.log(array);
| * // => [1]
| */
| function concat() {
| var length = arguments.length;
| if (!length) {
| return [];
| }
| var args = Array(length - 1),
| array = arguments[0],
| index = length;
|
| while (index--) {
| args[index - 1] = arguments[index];
| }
| return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));
| }
|
| module.exports = concat;
|
|