这个全局变量是属于哪儿呢?

function rec(){

   b = 'hello';

}

alert(b);

请问这个b是全局变量的话,那么这个全局变量是属于外部,还是属于rec()函数里面的全局变量?


var b ;

function rec(){

   b = 'hello';

}

alert(b);

是这样。。


function rec(){

   var b;

   b = 'hello';

}

alert(b);

还是这样。


海绵宝宝撒
浏览 401回答 2
2回答

眼眸繁星

第一个function rec(){   b = 'hello';}alert(b);{}外面的才是全局变量,{}里面的统统都是局部变量。在js里面,所有的全局变量统统指向window,不管你在哪里声明的变量,只要不是关键字(如var、let、const)声明的,统统提升为全局变量。第二个var b ;function rec(){   b = 'hello';}alert(b);b(加不加关键字都)是全局变量,没有值,打印当然undefined,你把rec()执行以下,他就有值了第三个function rec(){   var b;   b = 'hello';}alert(b);b加了关键字声明,又在{}内,所以是局部变量,你执行rec()与否,都是undefined

哈士奇WWW

首先建议看下js的变量提升,了解变量提升的机制js的function作用域;全局变量指的是window能打点显示出来的,如window.b
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript