diff --git a/lib/parse.js b/lib/parse.js index c45c064e..c8c5d0a0 100644 --- a/lib/parse.js +++ b/lib/parse.js @@ -1340,15 +1340,8 @@ function parse($TEXT, options) { function is_assignable(expr) { if (!options.strict) return true; - switch (expr[0]+"") { - case "dot": - case "sub": - case "new": - case "call": - return true; - case "name": - return expr[1] != "this"; - } + if (expr instanceof AST_This) return false; + return (expr instanceof AST_PropAccess || expr instanceof AST_Symbol); }; var maybe_assign = function(no_in) {