你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

每日一道javascript面试题(二)

2021/12/6 22:30:34

题目

console.log(a, globalName);//undefined undefined,它们的类型也是undefined
var a;
var globalName= "Javascript";
function Hello(){
   if(typeof globalName === 'undefined'){
        var  globalName= "ES6";
        console.log("hello ",globalName);//hello ES6
    }
    else
         console.log("hello ",globalName);
}
Hello();
console.log(globalName);//Javascipt

运行结果

在这里插入图片描述

代码分析

这道题要问的实际上就是变量提升这个知识点,var声明的变量会被自动提升到当前作用域的顶部(如果在函数中,那么提升到当前函数的顶部,如果是全局,那么提升至全变的顶部,在给变量赋值之前,变量的值为undefined),所以打印结果如上所示。