Symbol();
:l
return 1
SyntaxError: Illegal return statement
throw 1;
1
eval
throw {toString(){return this}};
// ok so that's what crashes it
eval = null; throw eval
// ok that resets everything
throw x;
ReferenceError: x is not defined
// actually let me test this throw {__proto__: null};
eval = 0
I broke it
delete eval; delete Function.prototype.constructor; delete Function;
// :)
var x = 1;
throw Object.keys(this);
Function,eval