unicorn/prefer-array-flat 严格
它的作用
优先使用 Array#flat() 而非传统的数组扁平化方法。
为什么这是不好的?
ES2019 引入了新的方法 Array#flat(),用于扁平化数组。
此规则旨在统一使用 Array#flat() 替代旧的数组扁平化技术。
示例
以下为 错误 用法的示例:
javascript
const foo = array.flatMap((x) => x);
const foo = array.reduce((a, b) => a.concat(b), []);
const foo = array.reduce((a, b) => [...a, ...b], []);
const foo = [].concat(maybeArray);
const foo = [].concat(...array);
const foo = [].concat.apply([], array);
const foo = Array.prototype.concat.apply([], array);
const foo = Array.prototype.concat.call([], maybeArray);
const foo = Array.prototype.concat.call([], ...array);以下为 正确 用法的示例:
javascript
const foo = array.flat();
const foo = [maybeArray].flat();如何使用
可通过配置文件或 CLI 启用 此规则:
json
{
"rules": {
"unicorn/prefer-array-flat": "error"
}
}bash
oxlint --deny unicorn/prefer-array-flat