1 var Symbol = require('./_Symbol'),
2 isArguments = require('./isArguments'),
3 isArray = require('./isArray');
5 /** Built-in value references. */
6 var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;
9 * Checks if `value` is a flattenable `arguments` object or array.
12 * @param {*} value The value to check.
13 * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
15 function isFlattenable(value) {
16 return isArray(value) || isArguments(value) ||
17 !!(spreadableSymbol && value && value[spreadableSymbol]);
20 module.exports = isFlattenable;