20年js感触颇深, 比较庆幸, js是一个基于编译而不是基于代码生成的语言, 比较无奈的是js的模块化实在说不上好,

精华
  • js基于编译的机制, 远远强于基于代码生成的机制.
  • js基于库lib而不是framework的设计理念, 完全不会有换一个框架就等于换一门语言的情况, 不过最近的react和vue等等…
  • 字面量
  • 函数作为参数
  • 数组和对象的处理的一致性

流程判断优先级

  1. && 和  
  2. ttt= ppp? xxx: ooo;
  3. if (xxx) return; 判断的是异常情况, 早早返回异常结果
  4. switch xxx , case ooo return; 此处一定要写return, 不然等着被坑.
糟粕
  • new
  • this
  • try … catch 很多时候是被迫用的.
    • 比如chrome 的lasterror, 真的没什么办法,
    • 比如由于模块化写法导致的无法控制的加载顺序. 配置加载, 文件加载和代码加载之间没有顺序.
  • super
  • extends