var isArrayLike = require('./isArrayLike'), | |
isObject = require('../lang/isObject'), | |
values = require('../object/values'); | |
/** | |
* Converts `value` to an array-like object if it's not one. | |
* | |
* @private | |
* @param {*} value The value to process. | |
* @returns {Array|Object} Returns the array-like object. | |
*/ | |
function toIterable(value) { | |
if (value == null) { | |
return []; | |
} | |
if (!isArrayLike(value)) { | |
return values(value); | |
} | |
return isObject(value) ? value : Object(value); | |
} | |
module.exports = toIterable; |