1. 函数
    1. 如何创建函数
      1. 函数声明
      2. 函数表达式
      3. 函数声明与函数表达式的区别
        1. 解析时间
        2. 作用域
      4. new
        1. 与eval的不同
    2. 函数是第一型的
      1. 函数可以赋值
      2. 函数可以作为参数
      3. 函数可以作为返回值被返回
    3. arguments对象
      1. 读取参数
      2. 修改参数
      3. length属性
    4. 具名函数
      1. 内部始终可以访问当前函数名
    5. 匿名函数
      1. 可以通过arguments.callee访问当前函数
    6. 自执行,临时函数
    7. 分类
      1. 函数
      2. 构造函数
      3. 方法
    8. call & apply
    9. this关键字
    10. 作用域
      1. 访问效率
    11. 实例化
    12. constructor
    13. 函数作为对象
      1. 可以作为bool判断
      2. 可以添加属性
      3. 缓存返回结果
        1. fibonacci
    14. prototype
      1. 给原型对象添加属性,方法
      2. 在构造其中添加方法
  2. 对象
    1. 创建对象
    2. 特殊对象
      1. 数组
      2. 字符串