this指向的四种场景
Posted marune
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了this指向的四种场景相关的知识,希望对你有一定的参考价值。
第一、如果一个函数中有this,但是它没有以对象方法的形式调用,而是以函数名的形式执行,那么this指向的就是全局对象;
第二、如果一个函数中有this,并且这个函数是以对象方法的形式调用,那么this指向的就是调用该方法的对象;
第三、如果一个函数中有this,并且包含该函数的对象也同时被另一个对象所包含,尽管这个函数是被最外层的对象所调用,this指向的也只是它上一级的对象,
如:
var obj = {
test;{
fun:function(){
console.log(this);
}
}
}
obj.test.fun();
第四、如果一个构造函数或以类方法中有this,那么它指向该构造函数或类创建出来的实例对象。
以上是关于this指向的四种场景的主要内容,如果未能解决你的问题,请参考以下文章