src/Util/Util.js
function isArrayLike(value) {
  return (
    value != null &&
    value.length &&
    !(
      typeof value === "function" &&
      Object.prototype.toString.call(value) === "[object Function]"
    ) &&
    typeof value === "object"
  );
}
function isArrayLike(value) {
  return (
    value != null &&
    value.length &&
    !(
      typeof value === "function" &&
      Object.prototype.toString.call(value) === "[object Function]"
    ) &&
    typeof value === "object"
  );
}
function isArrayLike ( value ) { return ( value != null && value . length && ! ( typeof value === "function" && Object . prototype . toString . call ( value ) === "[object Function]" ) && typeof value === "object" ) ; }
Checks if `value` is array-like. A value is considered array-like if it's
not a function and has a `value.length` that's an integer greater than or
equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.

@static
@category Lang
@param {*} value The value to check.
@return {Boolean} Returns `true` if `value` is array-like, else `false`.
@example

_.isArrayLike([1, 2, 3]);
// => true

_.isArrayLike(document.body.children);
// => true

_.isArrayLike('abc');
// => true

_.isArrayLike(_.noop);
// => false
Checks if value is array - like . A value is considered array - like if it s not a function and has a value . length that s an integer greater than or equal to 0 and less than or equal to Number . MAX_SAFE_INTEGER .