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