Skip to content

Conversation

@TomDeFrank
Copy link

The closure lesson as it stands can incorrectly fail.

It occurs if the student has their return statement on the same line as their zip() function declaration.

This fails:

function foo() {
  var bar;
  quux = 1;

  return function zip() {    
    var quux = 0;
    bar = true;
  };
}

This passes:

function foo() {
  var bar;
  quux = 1;

  function zip() {    
    var quux = 0;
    bar = true;
  };
  return zip;
}

By doing a regex match on scopeAsAscii for the string "return" you can accommodate both potential solutions.

Please let me know if you have any questions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant