** 构造函数内部原理 ** 内部隐式运行
1. 在函数体最前面隐式的加上 var this = {}
1. 执行 this.xxx = xxx;
1. 隐式的返回 this
**this** 一般指向
1. 函数预编译过程 this --> window
1. 全局作用域 this --> window
1. call/apply 可以改变函数运行时 this 指向
1. obj.func(); func() 里面的 this 指向 obj
来源: http://www.bubuko.com/infodetail-2525666.html