A few of the weakest parts:
- for (var x in y) when used for array iteration or even dict iteration; hasOwnProperty? Really?
- x[obj] = y; seriously, did i really want '[Object object]' as my key?
- the choice of function level scope over block level scope
... local variables right here ...
Lisp has block scope.
Can you write Lisp like this?
var x = 2;
Compiles and runs with f(undefined)