从一道奇怪的JS面试题说“作用域”与“提升”

一、提升全局变量 var vartmp=new Date (); function f(){ console.log(tmp); if( false ){ vartmp= hello ; } } f(); JS新手往往会以为将正常打印出日期,而实际输出的确是`undefined`! vartmp=new Date (); function f(){ …console.log(tmp); …if( fa