sindresorhus/eslint-plugin-unicorn

`no-useless-spread` it is not safe to remove spread in `[...foo.concat(bar)]`

Open

#2,480 创建于 2024年10月16日

在 GitHub 查看
 (4 评论) (0 反应) (0 负责人)JavaScript (5,022 star) (468 fork)user submission
docshelp wanted

描述

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/2b469bee475a8f3f2767f4669864acdd89654017/test/no-useless-spread.mjs#L259

[!NOTE] The concat() method preserves empty slots if any of the source arrays is sparse.

via MDN

const foo = new Array(5);
const bar = new Array(5);

const cat = [...foo.concat(bar)];
// now we got a new array with undefined x 10
// but foo.concat(bar) is empty x 10.
// It's not what we want.

贡献者指南