2017-10-15 66 views
-3

我期待找到constlet作爲保留關鍵字。 I've found onlyconst,但沒有let爲什麼`let`沒有被指定爲規範中的保留關鍵字

Keyword:: 
    await 
    break 
    case catch class const continue <---- `const` here 
    debugger default delete do 
    else export extends 
    finally for function 
    if import in instanceof 
    new 
    return 
    superswitch 
    this throw try typeof 
    var void 
    while with 
    yield 

let關鍵字?如果不是,爲什麼?

+1

往下看,只是一個缺口,你會發現一張紙條,上面寫着「讓我們和靜態被視爲通過靜態語義限制保留字(參見12.1.1,13.3.1.1,13.7.5.1和14.5.1),而比詞法「。 – BoltClock

+0

有一個音符在那裏解釋的'狀態let' – pvg

回答

4

let ES6ES5 strict mode沒有保留,所以它不能被同等對待的保留字,其餘爲向後兼容的原因是這樣的:

var let = 5; 

你」會發現很多在規範新的結構異常爲它的(如let let = 5;無效)。

+0

感謝您抽出時間來解釋不包括到關鍵字生產的原因 –

1

你可以看到在referenced document注:

在某些情況下產生伺機給出一個標識符的語義。參見12.1.1。在嚴格模式代碼,和靜態被視爲通過靜態語義限制保留字(見12.1.1,13.3.1.1,13.7.5.1,和14.5.1),而不是詞法文法。

相關問題