Discuss / JavaScript / 关于新的构造函数中使用 `call()` 的一点理解

关于新的构造函数中使用 `call()` 的一点理解

Topic source

关于第一步为什么要使用 call() 的理解:

调用“父”构造函数,创建一个“父原型”对象。原本构造函数如果不使用 new 的话会返回 undefined ,但这里使用 call() 将生成的“父原型对象”绑定到 this 变量上,因此在新的构造函数中 this 指向该对象。之后在新的构造函数中对该对象进行扩充。

新的构造函数使用 new XXX() 时,函数末尾自动返回 this ,此时 this 指向构造函数中创建并扩充过的对象。

不知道我理解得对不对


  • 1

Reply