So the lodash _.isarraylike method works by checking if what is given is an object that is not a function, and that the object has a length property. It also checks if that length property is a number that is an integer, and that it has a value that is higher than zero and the same or lower than that of MAX_SAFE_INTEGER.
So say I have just a plain old Object created with the Object literal syntax and then have just a few number properties and a length property, the length property is a number, and is also not a fraction. If I pass this kind of object to the lodash is array like method it should return a true value.
So it is worth noting that an actually array will also return true for the lodash is array like method. So the lodash is array like method is nt a good choice if you want to test if an object is array like and not an array. However it is not to hard to do just a little more additional testing to get around that. One way is to just use the lodash is array method with the not operator in conjunction with the is array like method to work out a simple expression.
SO there might be a number of other ways to test out if a value is array like or not that might work in most situations. Still it would seem that this is one of several methods in lodash where a native solution would still be a little time consuming to work out and test.