name),这里的context就是函数调用时的上下文,也就是this,只不过这个this是可以通过call方法来修改的;构造函数稍微特殊一点,它的this直接指向new之后返回的对象;window.setTimeout()和window.setInterval()默认的是this是window对象。
四、箭头函数中的this 箭头函数:this指向于函数作用域所用的对象。 箭头函数的重要特征:箭头函数中没有this和arguments,是真的没有! 箭头函数没有自己的this指向,它会捕获自己定义所处的外层执行环境,并且继承这个this值,指向当前定义时所在的对象。箭头函数的this指向在被定义的时候就确定了,之后永远都不会改变。即...
2、箭头函数:无this,按照普通变量的方式向外侧寻找this; 箭头函数中所使用的this都是来自函数作用域链,它的取值遵循普通变量一样的规则,在函数作用域链中一层一层往上找。 func c:普通函数,this指向调用者obj func inner:箭头函数,无this,按照普通变量的方式寻找this,因此往外层找到了fun c内的this,为调用者:...
箭头函数内的 this 指向外层的 this。 所以要知道箭头函数的 this 就得先知道外层 this 的指向,需要继续在外层应用七步口诀。 2. new 当使用 new 关键字调用函数时,函数中的 this 一定是 JS 创建的新对象。 读者可能会有疑问,“如果使用 new 关键调用箭头函数,是不是箭头函数的 this 就会被修改呢?”。 我们...
箭头函数的this指向 是 父级程序的this指向 如果没有父级程序 或者 父级程序没有指向 箭头函数的this指向是window (1)匿名函数绑定的事件处理函数 this指向默认是事件源 也就是div标签对象 oDiv.addEventListener('click' , function(){ console.log(this); ...
(1)箭头函数中的this就是定义时所在的this, 也就是说 箭头函数本身没有this。 箭头函数不可以使用bind, call , applay来改变this指向 arrow的作用域是构造函数Test的作用域,Test的作用域是实例化时候的作用域 箭头函数内部的this,取决于它所在的父级的上下文的this指向,new Test() 的时候,this指向实例,所以是...
但是箭头函数的this却始终与外面直接输出的this指向是一致的,不管箭头函数被哪个类或者对象拥有。这也说明...
普通函数在默认情况下,如果没有找到直接调用者,`this`会指向全局对象(在浏览器中是`window`)。🌐 在严格模式下(`use strict`),如果没有直接调用者,函数中的`this`会是`undefined`。🚫 使用`call`、`apply`或`bind`方法绑定时,`this`会指向绑定的对象。🔗2️⃣ 箭头函数中的`this`: ...
也就是说,不可能通过call、apply、bind来绑定箭头函数的this(它本身没有this)。而call、apply、bind可以绑定缓存箭头函数上面的普通函数的this。 例如: varstudent = {name:'dog',doSth:function(){console.log(this.name);return()=>{console.log...