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