Skip to content
← Back to rules

unicorn/prefer-array-flat-map Perf

🛠️ 💡 An auto-fix and a suggestion are available for this rule.

它的作用 ​

优先使用单个 .flatMap(),而不是 .map().flat() 或 .filter().flatMap()。

为什么这有问题? ​

单个 .flatMap(…) 可以避免创建中间数组。

示例 ​

以下是此规则的错误代码示例:

javascript
const bar = [1, 2, 3].map((i) => [i]).flat();
const result = values.filter((value) => value > 0).flatMap((value) => [value, value]);

以下是此规则的正确代码示例:

javascript
const bar = [1, 2, 3].flatMap((i) => [i]);
const result = values.flatMap((value) => (value > 0 ? [value, value] : []));

如何使用 ​

To enable this rule using the config file or in the CLI, you can use:

json
{
  "rules": {
    "unicorn/prefer-array-flat-map": "error"
  }
}
ts
import { defineConfig } from "oxlint";

export default defineConfig({
  rules: {
    "unicorn/prefer-array-flat-map": "error",
  },
});
bash
oxlint --deny unicorn/prefer-array-flat-map

版本 ​

此规则是在 v0.0.14 中添加的。

参考 ​