mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-26 01:58:06 +02:00
Reduce unnecessary usage of Array.prototype.concat()
There are obviously cases where using `concat` makes perfect sense, since that method doesn't change any of the existing Arrays; see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/concat However, in a few cases throughout the code-base that's not an issue and using `concat` only leads to unnecessary intermediate allocations. With modern JavaScript we can thus replace those with a combination of `push` and spread-syntax, which wasn't originally possible when the code was written.
This commit is contained in:
parent
f516bb2174
commit
c21f4faaf8
4 changed files with 21 additions and 23 deletions
9
external/builder/preprocessor2.js
vendored
9
external/builder/preprocessor2.js
vendored
|
@ -220,10 +220,11 @@ function postprocessNode(ctx, node) {
|
|||
case "BlockStatement":
|
||||
// Block statements inside a block are moved to the parent one.
|
||||
const subChildren = node.body[subExpressionIndex].body;
|
||||
Array.prototype.splice.apply(
|
||||
node.body,
|
||||
[subExpressionIndex, 1].concat(subChildren)
|
||||
);
|
||||
Array.prototype.splice.apply(node.body, [
|
||||
subExpressionIndex,
|
||||
1,
|
||||
...subChildren,
|
||||
]);
|
||||
subExpressionIndex += Math.max(subChildren.length - 1, 0);
|
||||
continue;
|
||||
case "ReturnStatement":
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue