我正在用Javascript重建一箇舊Java項目,並意識到在JS中沒有好的方法來執行枚舉。用ES6在JavaScript中枚舉
我能想出的最好的是:
const Colors = {
RED: Symbol("red"),
BLUE: Symbol("blue"),
GREEN: Symbol("green")
};
Object.freeze(Colors);
的const
保持Colors
被重新分配,並凍結它可以防止變異的鍵和值。我正在使用符號,因此Colors.RED
不等於0
,或除本身以外的任何其他內容。
這個配方有問題嗎?有沒有更好的辦法?
(我知道這個問題有點重複的,但所有的previous Q/As都相當老了,ES6爲我們提供了一些新的功能。)
這將是ES6一個完美的方法。你不必凍結它 – Nirus
@Nirus你做的,如果你不希望它被修改。 – zerkms
你有沒有注意到[這個答案](https://stackoverflow.com/a/30058506/1048572)? – Bergi