有关this 的一道题 ,想请教一下老师

来源:6-4 this 有几种赋值情况

Bizarre_Lion

2020-03-31

我在刷题的时候 看到这样的题

图片描述

但是 我去 执行了之后 报错这个
图片描述

我的想法:课程中讲过,函数决定this是什么是在函数执行的时候 (obt.fn) 这个已经将函数拿出来了 ,
也就是
(function(){
var a = 30
console.log(this.a)
})()
此时的this 应该指向 window
window .a 那不就是等于 10 嘛 ?

我找的这个题的出处给的答案是 20 ,我自己觉得是 10 ,但是chrome 执行报错。不知道问题出在哪里了,希望老师帮忙解答一下

写回答

1回答

双越

2020-03-31

你截图中,在每一行代码的最后都加分号,就不会报错了。再去试试。

0
1
Bizarre_Lion
我vs 编辑器 把 (obj.fn)() 格式化成了 obj.fn() 了,这我就知道 他这20从哪来的。 但是(obj.fn)() 这种写法 我真是没见过 谢谢老师指点
2020-03-31
共1条回复

一天时间高效准备前端技术一面 匹配大厂面试要求

针对时下面试高频考点,帮助新人js面试快速通关

4694 学习 · 1681 问题

查看课程