Returns true if the specified value is an array or like an array

@param {?} obj - source value
@return {boolean}
function isLikeArray(obj) {
	const res = isArray(obj) || obj &&

	// The hack for PhantomJS,
	// because it has strange bug for HTMLCollection and NodeList:
	// typeof 'function' && instanceof Function = false
	isObjectInstance(obj) && !isFuncRgxp.test(toString.call(obj)) && (
	// If the object is like an array
	obj.length > 0 && 0 in obj || obj.length === 0);

	return Boolean(res);
}