老师可以讲讲这题吗~
来源:5-7 选择练习
hyperse
2020-06-22 23:24:32
虽然知道答案是1个是因为箭头函数没有自己的this,所以都指向环境所在的this。但是最下面四句的调用代码还是不太理解是什么意思
1回答
好帮手慕星星
2020-06-23
同学你好,函数foo绑定了作用域之后,就不能再修改了。当第一次调用foo绑定了{id:1},箭头函数在创建时,绑定的就是当前作用域也就是foo的this,即{id:1}。后面三句在调用箭头函数时,传递的this指向并不会更改它的this指向。
1、第一句是调用foo方法,绑定作用域,f变量接收返回值,也就是
2、第二句是调用第一句中返回的3个函数,第三个函数调用之后输出结果
另外第三个函数没有返回值,所以变量t1的值为undefined
3、第三句,第四句和第二句是一样的,都是调用三个方法,虽然call方法在不同位置,传入不同的{},但是结果都是一样的,并不能改变this指向。
自己测试理解下,祝学习愉快!
相似问题