第 2 卷
JS 中如何确定 this 的值?如果是在全局作用域下,this 的值是全局对象,浏览器环境下是 window。
函数中 this 的指向取决于函数的调用形式,在㇐些情况下也受到严格模式的影响。
| ● | 作为普通函数调用:严格模式下,this 的值是 undefined,非严格模式下,this 指向全局对象。 |
|---|---|
| ● | 作为方法调用:this 指向所属对象。 |
| ● | 作为构造函数调用:this 指向实例化的对象。 |
| ● | 通过 call, apply, bind调用:如果指定了第㇐个参数thisArg,this 的值就是 thisArg 的值(如果是原始值,会包装为对象);如果不传 thisArg,要判断 |
严格模式,严格模式下 this 是 undefined,非严格模式下 this 指向全局对象。
手写专题
实现继承
说出中心思想,而不是列举被博客炒了㇐遍又㇐遍的冷饭。
实现继承有两个方面要考虑,㇐个是原型属性和方法的继承,另㇐个是构造器的继承。

手写 apply, call, bind
call 和 apply 是用来绑定 this,并提供参数,执行后会立即运行原函数。call 以列表形式提供参数, apply 以数组形式提供传参。
●手写 call

本卷图片
本页图片








本页图片









本页图片








