影响JavaScript中this指向的几种函数调用方法

前言

初学javascript总会对this指向感到疑惑,想要深入学习javascript,必须先理清楚和this相关的几个概念。javascript中this总是指向一个对象,但具体指向谁是在运行时根据函数执行环境动态绑定的,而并非函数被声明时的环境。除去不常用的with和eval的情况,具体到实际应用中,this指向大致可以分为以下4种。

作为对象的方法调用

当函数作为对象的方法被调用时,this指向该对象:

作为普通函数调用

当函数作为普通的函数被调用时,非严格模式下this指向全局对象:

严格模式下this为undefined:

构造器调用

当new一个对象时,构造器里的this指向new出来的这个对象:

call或apply调用

用Function.prototype.apply或Function.prototype.call可以动态改变传入函数的this指向:

下一篇文章我将重点介绍call和apply。

最后

将this理解透彻,是一个jser必须要做的事情。

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();