Skip to content

Instantly share code, notes, and snippets.

@paulfryzel
Last active December 23, 2015 13:29
Show Gist options
  • Save paulfryzel/6642935 to your computer and use it in GitHub Desktop.
Save paulfryzel/6642935 to your computer and use it in GitHub Desktop.
var parse = require('esprima').parse;
var generate = require('escodegen').generate;
function foo() {
var a = 1;
(function () {
var b = 2;
console.log(a);
})();
console.log(a);
console.log(b);
}
function body(fn) {
var ast = parse(foo).body[0].body;
var gen = generate(ast, { format: { compact: true } });
return gen.substring(1, gen.length - 1);
}
console.log(body(foo));
//=> var a=1;(function(){var b=2;console.log(a);}());console.log(a);console.log(b);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment