no-array-reverse

March 27, 2026 ยท View on GitHub

๐Ÿ“ Prefer Array#toReversed() over Array#reverse().

๐Ÿ’ผ This rule is enabled in the following configs: โœ… recommended, โ˜‘๏ธ unopinionated.

๐Ÿ’ก This rule is manually fixable by editor suggestions.

Prefer using Array#toReversed() over Array#reverse().

Array#reverse() modifies the original array, while Array#toReversed() returns a new reversed array.

Examples

// โŒ
const reversed = [...array].reverse();

// โœ…
const reversed = [...array].toReversed();

Options

Type: object

allowExpressionStatement

Type: boolean
Default: true

This rule allows array.reverse() to be used as an expression statement by default.
Pass allowExpressionStatement: false to forbid Array#reverse() even if it's an expression statement.

/* eslint unicorn/no-array-reverse: ["error", {"allowExpressionStatement": false}] */
// โŒ
array.reverse();