var name = ‘World!’;
(function () {
if (typeof name === ‘undefined’) {
var name = ‘tom’;
console.log('Good ’ + name);
} else {
console.log('Hello ’ + name);
}
})();
// A. Good tom
// B. Hello tom
// C. Hello undefined
// D. Hello World
答案是A。
在 JavaScript中, functions 和 variables 会被提升。变量提升是JavaScript将声明移至作用域 scope (全局域或者当前函数作用域) 顶部的行为。