unicorn/no-array-sort 可疑
它的作用
优先使用 Array#toSorted() 而非 Array#sort()。
为什么这是个问题?
Array#sort() 会就地修改原始数组,可能导致意外的副作用——尤其是在代码中其他位置仍使用该原始数组时。
示例
此规则的 错误 用法示例:
js
const sorted = [...array].sort();此规则的 正确 用法示例:
js
const sorted = [...array].toSorted();配置
此规则接受一个配置对象,包含以下属性:
allowExpressionStatement
type: boolean
默认值: true
当设置为 true(默认值)时,允许将 array.sort() 作为表达式语句使用。设为 false 可禁止即使作为表达式语句使用的 Array#sort()。
当 allowExpressionStatement 设置为 false 时,此规则的 错误 用法示例:
js
array.sort();如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"unicorn/no-array-sort": "error"
}
}bash
oxlint --deny unicorn/no-array-sort