创建一个仅限于特定值的变量

Creating a variable that is restricted to certain values

Typescript 相对较新 - 我正在寻找一种方法来创建仅限于特定值的变量类型。

例如,我有一个元素,我想根据一些 "zoom" 变量更改其宽度。

我希望能够创建一些变量类型 "Zoom",它像数字一样工作,但只能是值 1、2、5、10、20、50 或 100(限制元素可以放大的比例)

我还希望能够增加我的缩放变量并让它像这样遍历这些值:

let zoom : Zoom = 1;

zoom++
// Here, zoom should equal 2

zoom++
// Here, zoom should equal 5

zoom++
// Here, zoom should equal 10

zoom--
// Here, zoom should equal 5

等等等等。有没有办法在 Typescript 中轻松地做到这一点?

全局说。是不可能的。可以使用包含正确值的帮助变量和数组来完成。

var zoomLevels = [1, 2, 5, 10, 20, 50, 100]

var zoom = 0;
// zoomLevels[zoom] is now 1

zoom++;
// zoomLevels[zoom] is now 2    

zoom++;
// zoomLevels[zoom] is now 5

zoom++;
// zoomLevels[zoom] is now 10

zoom--;
// zoomLevels[zoom] is now 5