2012-06-20 51 views
1
enum ButtonType { Autowoot, Autoqueue } 

是導致谷歌Chrome的開發者工具給我這個錯誤:Chrome的錯誤:JavaScript的枚舉聲明「未知消息reserved_word」

Uncaught SyntaxError: <unknown message reserved_word> 

我讀了你可以從here創建這樣的枚舉,但我的腳本沒有運行,因爲這裏有這個錯誤。我正在做那個回答問題的人寫的東西,而且它不起作用。有任何想法嗎?

謝謝!

回答

1

你需要做的是這樣的:

var ButtonType = { 
    'Autowoot' : 0, 
    'Autoqueue' : 1 
}; 

枚舉語法enum ButtonType { Autowoot, Autoqueue }目前不支持。

+0

謝謝,我想知道爲什麼沒有人對該帖子中的人有同樣的問題。奇怪的。無論如何,謝謝! – user1436713

3

JavaScript不會對變量進行靜態類型化。

一旦變量被聲明,它的數據可能是任何有效的JavaScript構造。 (好吧,真的,一切都是漂亮多一個對象)。

enum ButtonType = {'Autowoot':0, 'Autoqueue':1};

是給一個錯誤,因爲enum被標記以供將來使用一個javascript reserved word。你不能使用它,但它什麼都不做。

如果你想聲明在當前執行範圍稱爲ButtonType一個對象,你應該做的@xdazz說:

var ButtonType = {'Autowoot':0, 'Autoqueue':1};

(如果你想在另一個範圍,這是一個不同問題雖然:))。