跳到内容

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();

参考

在 MIT 许可下发布。