面试遇到的题目(一)

在下是一名前端小学生,写博客方面也是新人一只。

打算把面试中遇到过的面试题记录下来,或者在博客看到其他人记录的面试题拿来分享,遇到什么写什么,如内容中有不对的地方,请大家不吝赐教,谢谢。


js题目 涉及作用域链、提升机制等知识点

var a = 10;
function test(){	
   console.log(a)
   var a = 20;
}
test();

js并不是声明一个变量就赋值,会先把所有变量都声明好,然后进行赋值。所以js解析的代码,应该是:

var a;
a = 10;
function test(){
   var a;	
   console.log(a)
   a = 20;
}
test();


使用变量时会在当前函数作用域中查找,如果没有会沿着作用域链向上查找, 直至全局作用域,如果还没有的话就返回undefined,所以运行结果是:

undefined

你可能感兴趣的:(javascript)