docs/reference/compat/array/every.md
::: warning Use Array.prototype.every()
This every function operates slowly due to complex object processing, support for various condition formats, etc.
Instead, use the faster and more modern Array.prototype.every().
:::
Checks if all values in an array or object meet the given condition.
const result = every(collection, predicate);
every(collection, predicate?)Use every when you want to check if all elements in an array or object satisfy a specific condition. The condition can be specified in various formats such as a function, partial object, property-value pair, property name, etc.
import { every } from 'es-toolkit/compat';
// Using a test function
const numbers = [2, 4, 6, 8];
every(numbers, x => x % 2 === 0);
// Returns: true
// Using a property name
const users = [
{ name: 'Alice', active: true },
{ name: 'Bob', active: true },
];
every(users, 'active');
// Returns: true
// Using a partial object
every(users, { active: true });
// Returns: true
// Using a property-value pair
every(users, ['active', true]);
// Returns: true
It works the same way for objects.
import { every } from 'es-toolkit/compat';
const scores = { math: 90, english: 85, science: 92 };
every(scores, score => score >= 80);
// Returns: true
null or undefined are treated as empty collections and return true.
import { every } from 'es-toolkit/compat';
every(null);
// Returns: true
every(undefined);
// Returns: true
collection (ArrayLike<T> | Record<any, any> | null | undefined): The array or object to check.predicate (((item: T, index: number, collection: any) => unknown) | Partial<T> | [keyof T, unknown] | PropertyKey, optional): The condition to check. Can use a function, partial object, property-value pair, or property name. Defaults to the identity function.(boolean): Returns true if all elements satisfy the condition, otherwise false.