-
没有完整的面向对象和自定义类型支持:是的,因为不能太像Java,所以牺牲了这点,这个祸根到现在还没解决(虽然ES6已经很尽力了)
-
没有原生命名空间支持:所有没有命名空间支持的语言,都不适合做大型应用项目
-
没有模块封装和加载机制(动态加载、静态加载):这个就真不用多说了,多少前端的血和泪,多少年了,到现在还是没有标准方案
-
方法没有局部作用域:let关键词咋来的?血泪交汇来的。
-
this变量的初学者常见问题,尤其是匿名函数。这个问题PHP5.5之前竟然也有,哈哈。
-
Array是Object:这是最让初学者抓狂的问题,而且,直到ES6才解决,现在仍然是用小聪明的方法来判断变量是不是Array
-
跟PHP一样,纯传值,没有传引用的方式,不过好在Array是Object,传的是对象指针,所以开销不算大,不过,没有办法实现out parameter(除非是Object,采用call by sharing方式)
-
语法糖太少:ES6已经改善了不少,我们就想想,有多少库就是为了可以用闭包写for each的