let不能提公升變數,沒定義之前不能呼叫
var 能提公升變數
console.
log(a)
var a=1;
console.
log(b)
let b=1;
aa()functionaa(
)
2.暫時性死區 在兩次定義之間不能使用變數a,a=3為暫時性死區
let a=
1functionaa(
)aa()
3.var 能重複定義,let不能重複定義
var a=1;
var a=2;
console.
log(a)
let a=1;
let a=2;
console.
log(a)
4.var全域性變數,let區域性變數
for
(var i=
1;i<
4;i++
)console.
log(i)
for(
let j=
1;j<
4;j++
)console.
log(j)
var 與 let 的區別
var與let的區別是作用域不同,var作用域在最近的函式區塊內,let作用域在最近的封閉區塊內,比函式區塊要小。如果沒有在區塊內的話,二者都是全域性的。全域性的 在函式區塊之外使用的話,二者是等價的,都是全域性的。let me go globally scoped vari able global...
let與var的區別
let為es6新增的用來宣告變數的命令,用法類似與var,那麼let和var具體是怎麼個用法以及他們之間有什麼區別呢?一.let宣告的變數只在let 塊有效 console.log a 報錯,a is not defined console.log b 2複製 用let宣告了變數a,用var宣告了變...
let 與 var 的區別
let 與 var 的區別 a.let 不能重複宣告,但var可以 b.let會產生塊級作用域,且只在自己的作用域內生效,但var不受限制 c.變數提公升 console.log i undefined var i 10 console.log i 10 console.log i 報錯 let i...