No unneeded empty arrays in transform spread (#6763)
* No unneeded empty arrays in transform spread Since Array.prototype.concat creates a new array from inputs, there's no need to call it from a new empty array ([].concat()). * [fixup] simplify detection of new array
This commit is contained in:
committed by
Henry Zhu
parent
617d35245f
commit
aefbb1380e
@@ -52,11 +52,11 @@ export default function(api, options) {
|
||||
if (!hasSpread(elements)) return;
|
||||
|
||||
const nodes = build(elements, scope, state);
|
||||
let first = nodes.shift();
|
||||
const first = nodes.shift();
|
||||
|
||||
if (!t.isArrayExpression(first)) {
|
||||
nodes.unshift(first);
|
||||
first = t.arrayExpression([]);
|
||||
if (nodes.length === 0 && first !== elements[0].argument) {
|
||||
path.replaceWith(first);
|
||||
return;
|
||||
}
|
||||
|
||||
path.replaceWith(
|
||||
|
||||
Reference in New Issue
Block a user