gpt4 book ai didi

typescript - 在 TypeScript 中使用 ENUM 有什么意义?

转载 作者:搜寻专家 更新时间:2023-10-30 21:12:13 25 4
gpt4 key购买 nike

我一直在挖掘 TypeScript 中的 enum,这让我开始思考使用它的意义所在。我不是在质疑它的值(value)。只是我不熟悉它的用法,这导致我编写代码,例如声明某种对象,这些对象保持在整个应用程序中使用的常量,而无需使用 enum。总而言之,使用它和仅使用/声明保持某些常量的手动对象有什么区别?任何见解将不胜感激!

最佳答案

枚举很容易强制进行类型验证(使用常量并不容易),并且很容易将可读枚举转换为数字,反之亦然。

enum Access {
Read = 1,
Write = 2,
Execute = 4,
AnotherAccess = 8
}

当我有一组选择时,我总是使用它,以明确代码接受什么样的值并提高代码可读性

if( myAccess == Access[Access[myaccess]] ) // enum used

按位运算是另一回事,例如,我的访问是 (Access.Read | Access.Execute)

var myAccess = Access.Read | Access.Execute; //instead of 1 | 4 = 5

// do I have write access?
if ( (myAccess & Access.Write) > 0) { /* yes */ }

// do I have read and execute
if ( (myAccess & (Access.Read | Access.Execute)) > 0) { /* yes */ }

关于typescript - 在 TypeScript 中使用 ENUM 有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48295918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com