unicorn/no-array-reverse 懸念
何をするか
Array#reverse() の代わりに Array#toReversed() を使用することを推奨します。
なぜ問題なのか
Array#reverse() は元の配列をインプレースで変更するため、他の場所でもその配列が使われている場合、予期しない副作用を引き起こす可能性があります。
例
このルールに違反する 誤った 例:
js
const reversed = [...array].reverse();このルールに従う 正しい 例:
js
const reversed = [...array].toReversed();設定
このルールは以下のプロパティを持つ設定オブジェクトを受け入れます。
allowExpressionStatement
type: boolean
default: true
このルールは、デフォルトで array.reverse() を式文として許可しています。false に設定すると、式文であっても Array#reverse() を禁止します。
このオプションを false に設定した場合の 誤った 例:
js
array.reverse();使い方
このルールを有効にするには、設定ファイルまたは CLI で次のように使用できます:
json
{
"rules": {
"unicorn/no-array-reverse": "error"
}
}bash
oxlint --deny unicorn/no-array-reverse