Skip to content

drop (Lodash Compatibility) ​

Use drop from es-toolkit

This drop function operates in a complex manner due to handling of null or undefined, toInteger conversion, etc.

Instead, use the faster and more modern drop from es-toolkit.

Removes a specified number of elements from the beginning of an array.

typescript
const result = drop(array, n);

Reference ​

drop(array, n?) ​

Use drop when you want to remove several elements from the beginning of an array and get the rest. By default, it removes the first element.

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

// Basic usage (removes first element)
drop([1, 2, 3, 4, 5]);
// Returns: [2, 3, 4, 5]

// Remove first 2 elements
drop([1, 2, 3, 4, 5], 2);
// Returns: [3, 4, 5]

// Remove first 3 elements
drop(['a', 'b', 'c', 'd'], 3);
// Returns: ['d']

When specifying 0 or a negative number, it returns the original array as is.

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

// Remove 0 elements
drop([1, 2, 3], 0);
// Returns: [1, 2, 3]

// Specify negative number
drop([1, 2, 3], -1);
// Returns: [1, 2, 3]

When specifying a number larger than the array, it returns an empty array.

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

// Specify number larger than array size
drop([1, 2, 3], 5);
// Returns: []

// Remove from empty array
drop([], 1);
// Returns: []

null or undefined arrays are treated as empty arrays.

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

drop(null, 1);
// Returns: []

drop(undefined, 2);
// Returns: []

Array-like objects are also supported.

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

// Array-like object
const arrayLike = { 0: 'a', 1: 'b', 2: 'c', length: 3 };
drop(arrayLike, 1);
// Returns: ['b', 'c']

Parameters ​

  • array (ArrayLike<T> | null | undefined): The array from which elements will be removed.
  • n (number, optional): The number of elements to remove. Default is 1.

Returns ​

(T[]): Returns a new array with the specified number of elements removed from the beginning.

Released under the MIT License.