1. 面向对象的Javascript

Javascript很大的一个特色是基于原型继承的Javascript对象系统。
1.所有的数据都是对象
2.要的到一个对象,不是通过实例化类,而是找到一个对象作为原型并克隆它。
3.对象会记住它的原型
4.如果对象无法响应某个请求,它会把这个请求委托给它的构造器的原型

2. this 、call 和 apply

this

  • 作为对象的方法被调用(指向对象)
  • 作为普通函数调用(指向全局对象window)
  • 构造器调用
  • Function.prototype.call
  • Function.prototype.apply

    call apply

    可以通过call apply传递对象,来修正this的对象,解决this丢失的问题。

    3. 闭包和高阶函数

    这一部分理解不是很透彻,

  • 变量的作用域

  • 变量的生存周期
  • 闭包的更多作用
    • 封装变量
    • 延续局部变量的寿命
  • 闭包和面向对象设计
  • 用闭包实现命令模式

    4. 单例模式