Skip to content

Commit

Permalink
Destructuring: Fix array unpacking assignments with holes on RHS
Browse files Browse the repository at this point in the history
  • Loading branch information
motiz88 committed Jan 26, 2019
1 parent 7dc157f commit 0ecb9ca
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 1 deletion.
6 changes: 5 additions & 1 deletion packages/babel-plugin-transform-destructuring/src/index.js
Expand Up @@ -83,7 +83,11 @@ export default declare((api, options) => {

if (op) {
node = t.expressionStatement(
t.assignmentExpression(op, id, t.cloneNode(init)),
t.assignmentExpression(
op,
id,
t.cloneNode(init) || this.scope.buildUndefinedNode(),
),
);
} else {
node = t.variableDeclaration(this.kind, [
Expand Down
Expand Up @@ -11,3 +11,7 @@ var [a, b] = [...foo, bar];
var [a, b] = [foo(), bar];
var [a, b] = [clazz.foo(), bar];
var [a, b] = [clazz.foo, bar];
var [a, b] = [, 2];
[a, b] = [1, 2];
[a, b] = [, 2];
; // Avoid completion record special case
Expand Up @@ -34,3 +34,10 @@ var _ref7 = [clazz.foo(), bar],
var _ref8 = [clazz.foo, bar],
a = _ref8[0],
b = _ref8[1];
var a,
b = 2;
a = 1;
b = 2;
a = void 0;
b = 2;
; // Avoid completion record special case

0 comments on commit 0ecb9ca

Please sign in to comment.