Back to Es Toolkit

each (Lodash Compatibility)

docs/reference/compat/array/each.md

1.46.11.6 KB
Original Source

each (Lodash Compatibility)

::: warning Use Array.prototype.forEach

This each function operates slowly due to complex type processing and support for various collection types.

Instead, use the faster and more modern Array.prototype.forEach.

:::

Performs an iteration operation on each element of an array or object.

typescript
const result = each(collection, iteratee);

Usage

each(collection, iteratee)

Iterates through each element of an array, object, or string and executes the given function. For arrays, it iterates in index order; for objects, it iterates through enumerable properties.

typescript
import { each } from 'es-toolkit/compat';

// Iterate array
each([1, 2, 3], (value, index) => console.log(value, index));
// Logs: 1 0, 2 1, 3 2

// Iterate object
each({ a: 1, b: 2 }, (value, key) => console.log(key, value));
// Logs: 'a' 1, 'b' 2

// Iterate string
each('hello', (char, index) => console.log(char, index));
// Logs: 'h' 0, 'e' 1, 'l' 2, 'l' 3, 'o' 4

If the function returns false, iteration stops.

typescript
import { each } from 'es-toolkit/compat';

each([1, 2, 3, 4], value => {
  console.log(value);
  return value !== 2; // Stop at 2
});
// Logs: 1, 2

Parameters

  • collection (ArrayLike<T> | Record<any, any> | string | null | undefined): The collection to iterate over.
  • iteratee ((item: any, index: any, collection: any) => unknown, optional): The function to execute for each element. Default is the identity function.

Returns

(ArrayLike<T> | Record<any, any> | string | null | undefined): Returns the original collection.