isObject
isObject
Verifies if provided Verificable
represents a value that is an object. Only non-null values for which typeof
operation provides "object"
result are matching, so string, number and other primitive values will not match this Predicate
.
The check internally is done by checking the type of the value typeof value === "object"
, however explicitly excluding null
as matching value.
That also means that functions are not matching this predicate, since for functions typeof
operation returns "function"
, but arrays are matching the predicate.
Possible errors:
If provided Verificable
is not an object:
Verificable
is not an object:{
type: "isObject",
path: [/* ... */]
}
Examples:
Each of examples uses this import statement:
const { asVerificable, isValid, isObject } = require("verifica");
Null or undefined is not considered an object:
const verificable = asVerificable(null);
isValid(verificable, isObject); // false
String value is not considered an object as well:
const verificable = asVerificable("123");
isValid(verificable, isObject); // false
Objects are matching:
const verificable = asVerificable({ prop: "value" });
isValid(verificable, isObject); // true
Arrays are considered objects as well:
const verificable = asVerificable(["a", "b"]);
isValid(verificable, isObject); // true
Last updated
Was this helpful?