首页 > 题目叫:仅用一道题考验前端工程师的基础和内功

题目叫:仅用一道题考验前端工程师的基础和内功

var a = 2;  
function foo(){  
    console.log(this.a);
}

foo();  

------ 我是分割线 ------

2015.11.28 更新:

抛出这道题的本意是好的,我承认名称起的有点装b了,但是这个不重要,重要的是,下面的回答补充的非常精彩,也是我这个问题的目的,共勉。


装逼题。真正考察一个前端的基础和内功的是 HTTP 协议,一切语言层面的东西都是表象,真正解决问题的时候就知道什么有用了。


其实我很明白你想说什么。。。 但是你的问题没有提好。。

这个题,在浏览器的环境下,就是输出2.没有其他问题,

如果是nodejs的环境,可能是2 也可能是 undefined的。

原文出处在这里。 http://f2e.souche.com/blog/a-js-problem-about-global/

不谢。


2啊,没什么问题吧,而且基本功就是指作用域和this吗。。


你的标题很吸引眼球~


既然是考验前端工程师的基础和内功,那么这道题答案是 undefined.


this = window


作为新手回答,手机没有码代码验证,如有错误感谢指正
var出的a为全局变量,foo()在全局调用,this指向全局,所以输出2。不知道对不对


我作为初级前端回答就是2。。foo在window下嘛

【热门文章】
【热门文章】