国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 望江县| 井研县| 东乡县| 娄烦县| 金华市| 乡宁县| 舒兰市| 视频| 日喀则市| 随州市| 收藏| 罗城| 喀喇沁旗| 盘山县| 株洲市| 怀集县| 仲巴县| 洛川县| 巫溪县| 壤塘县| 龙州县| 北安市| 西林县| 突泉县| 南京市| 尉氏县| 郑州市| 望城县| 施甸县| 襄垣县| 新干县| 阿拉尔市| 盘锦市| 天津市| 柘城县| 宁海县| 灵武市| 当涂县| 三亚市| 蓬莱市| 楚雄市|