Vue中 let 關鍵字


let

es6新增了let命令,用來聲明變量。它的用法類似於var,但是所聲明的變量,只在let命令所在的代碼塊內有效。

不存在變量提升 

var命令會發生”變量提升“現象,即變量可以在聲明之前使用,值為undefined。這種現象多多少少是有些奇怪的,按照一般的邏輯,變量應該在聲明語句之后才可以使用。

為了糾正這種現象,let命令改變了語法行為,它所聲明的變量一定要在聲明后使用,否則報錯。

1
2
3
4
5
6
7
// var 的情況
console.log(foo);  // 輸出undefined
var  foo = 2;
 
// let 的情況
console.log(bar);  // 報錯ReferenceError
let  bar = 2;

上面代碼中,變量foovar命令聲明,會發生變量提升,即腳本開始運行時,變量foo已經存在了,但是沒有值,所以會輸出undefined。變量barlet命令聲明,不會發生變量提升。這表示在聲明它之前,變量bar是不存在的,這時如果用到它,就會拋出一個錯誤。

不允許重復聲明  

let不允許在相同作用域內,重復聲明同一個變量。

1
2
3
4
5
6
7
8
9
10
11
// 報錯
function  func() {
   let  a = 10;
   var  a = 1;
}
 
// 報錯
function  func() {
   let  a = 10;
   let  a = 1;
}

因此,不能在函數內部重新聲明參數

1
2
3
4
5
6
7
8
9
function  func(arg) {
   let  arg;  // 報錯
}
 
function  func(arg) {
   {
     let  arg;  // 不報錯
   }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM