| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- 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,
- args = Array(length ? length - 1 : 0),
- array = arguments[0],
- index = length;
- while (index--) {
- args[index - 1] = arguments[index];
- }
- return length
- ? arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1))
- : [];
- }
- module.exports = concat;
|