22 lines
629 B
JavaScript
22 lines
629 B
JavaScript
import { isLength } from "../../predicate/isLength.mjs";
|
|
//#region src/compat/predicate/isArrayLike.ts
|
|
/**
|
|
* Checks if `value` is array-like.
|
|
*
|
|
* @param {any} value The value to check.
|
|
* @returns {boolean} Returns `true` if `value` is array-like, else `false`.
|
|
*
|
|
* @example
|
|
* isArrayLike([1, 2, 3]); // true
|
|
* isArrayLike('abc'); // true
|
|
* isArrayLike({ 0: 'a', length: 1 }); // true
|
|
* isArrayLike({}); // false
|
|
* isArrayLike(null); // false
|
|
* isArrayLike(undefined); // false
|
|
*/
|
|
function isArrayLike(value) {
|
|
return value != null && typeof value !== "function" && isLength(value.length);
|
|
}
|
|
//#endregion
|
|
export { isArrayLike };
|