久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

JS中var let聲明范圍區別詳解

瀏覽:6日期:2022-06-12 17:48:50
目錄var聲明提升var可以重復聲明同一個變量var全局聲明作用域var聲明提升console.log(name) //土豆var name = '土豆';

使用var聲明的變量會自動提升到函數作用域的頂部

function foo(){ console.log(name); var name = '土豆';}foo() //undefined//等價于function foo(){ var name; console.log(name); name = '土豆';}foo(); //undefinedconsole.log(name) //ReferenceError name沒有被定義let name ='土豆';

而使用let定義的name不會被提升,報出ReferenceError的錯誤;

var可以重復聲明同一個變量var name = '番茄';var name = '西瓜';var name = '土豆';console.log(name);//土豆

而使用let重復聲明同一個變量會報錯。

var name = '土豆';let name = '土豆';console.log(name);//'name' has already been declaredlet name = '土豆';var name = '土豆';console.log(name);//Cannot redeclare block-scoped variable 'name'.var全局聲明var name = '土豆';console.log(window.name);//土豆let age = '24';console.log(window.age); //undefined

使用var定義的變量會被掛載到window上,成為window對象的屬性,而使用let不會。

作用域if(true){ var name = '土豆'; console.log(name);}console.log(name);//土豆//土豆if(true){ let age = 24; console.log(age);}console.log(age);//24//undefined

使用var聲明的范圍是函數作用域,使用let聲明的范圍是塊作用域。

以上就是JS中var let聲明范圍區別詳解的詳細內容,更多關于JS var let聲明范圍區別的資料請關注好吧啦網其它相關文章!

標簽: JavaScript
主站蜘蛛池模板: 晋江市| 石泉县| 阿尔山市| 义乌市| 延津县| 普陀区| 洱源县| 昌平区| 家居| 探索| 澎湖县| 榆社县| 游戏| 仁怀市| 永善县| 扶绥县| 日照市| 建阳市| 迁西县| 宁化县| 调兵山市| 海淀区| 双城市| 巴南区| 乌拉特中旗| 丹寨县| 双江| 抚顺市| 翁牛特旗| 淮阳县| 郴州市| 北海市| 射洪县| 织金县| 博湖县| 民丰县| 连南| 沙洋县| 岱山县| 定边县| 砚山县|