国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

關(guān)于javascript變量聲明、函數(shù)聲明提升的問題

2024-04-27 15:15:49
字體:
供稿:網(wǎng)友

今天看到了個(gè)面試題

function fn(){ console.log(a); var a = 2; function a(){ }; console.log(a);};fn();

變量聲明提升和函數(shù)聲明提升,代碼可以這樣理解:

function fn(){ var a; function a(){ }; console.log(a);//這里是什么? a = 2; console.log(a);//2};fn();

查了一下,說 函數(shù)聲明的權(quán)重要比變量聲明的權(quán)重大,同名情況下,變量聲明會(huì)被忽略。這樣的話,第一個(gè)console就是函數(shù)本身。事情這樣結(jié)束就沒意思了。再看一題。

function a(){ console.log(1);};var a = function(){ console.log(2);}a();//2

這就不對(duì)了吧。不是說好的函數(shù)聲明權(quán)重大,同名的變量聲明會(huì)被忽略嗎?百思不得姐(解),下班路上寒風(fēng)一吹,明白了…. 根據(jù)變量聲明提升,和函數(shù)聲明提升,上面的代碼可以寫成下面這樣。確實(shí)是函數(shù)聲明權(quán)重大于變量聲明,忽略了變量的聲明。但是下面還有給變量a賦值的操作。再調(diào)用a();自然就是得到2這個(gè)結(jié)果了

var a;function a (){ console.log(1);}console.log(a);//"function a (){}"a = function(){ console.log(2);}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 昭平县| 景德镇市| 哈密市| 广平县| 广昌县| 阳曲县| 呼和浩特市| 晋州市| 理塘县| 晋江市| 德惠市| 元谋县| 奈曼旗| 五华县| 澎湖县| 济宁市| 格尔木市| 白银市| 四子王旗| 山阳县| 离岛区| 尚志市| 阿巴嘎旗| 家居| 元朗区| 陆川县| 镇平县| 凤阳县| 都安| 自贡市| 龙海市| 星座| 友谊县| 禄丰县| 阿拉善左旗| 兴安县| 板桥市| 景谷| 剑河县| 忻城县| 福泉市|