微信公众号:javafirst
继续我们的经典面试题系列,今天我们了解一下关于函数内部this指向的问题,用一个简单的例子来讲解一下:
看下面的代码,你觉得输出的结果是什么?
文章图片
代码中我们4次调用来console.log()来在控制台输出内容,请问4次的内容分别是什么?
【java|《JavaScript经典面试题》第3道(关于this指向的常见面试题)】在外部函数中, this
和self
两者都指向了 myObject
,因此两者都可以正确地引用和访问foo
。
在内部函数中,this
不再指向myObject
。其结果是,this.foo
没有在内部函数中被定义,相反,指向到本地的变量self
保持在范围内,并且可以访问。 (在ECMA 5之前,在内部函数中的this 将指向全局的 window 对象;反之,因为作为ECMA 5,内部函数中的功能this 是未定义的。)
所以,上面的代码将输出以下内容到控制台:
文章图片
更多资源扫一扫免费获取
文章图片
推荐阅读
- 前端面试题|前端面试题之JavaScript【this指向】
- web前端|面试必问JavaScript基础面试题(附答案详解)
- 经典面试|Javascript中经典面试题 原型链 闭包 this指向问题 类的继承
- java|学生学籍管理系统(JAVA+Spring+SpringMVC+Mybatis)毕设,课设
- javaScript|2021年Javascript最常见的面试题以及答案
- 面试题|牛客网前端刷题(一)
- JavaScript高级语法|ES6——class类实现继承
- 某课体系课-Java工程师2022版
- 图灵JAVA互联网架构师五期内置文档资料