La différence entre l'énumération de chaînes et les types d'union dans TypeScript

Dans TypeScript, les énumérations de chaînes et les types d'union sont deux manières différentes de représenter un ensemble de valeurs liées.

Énumération de chaînes : l'énumération de chaînes utilise un ensemble de chaînes connues comme membres de l'énumération. Ils sont compilés en chaînes en JavaScript et les valeurs littérales des membres de l'énumération sont conservées lors de l'exécution. Leurs valeurs sont accessibles via leurs noms de membres d'énumération.

enum Direction {
  Up = "UP",
  Down = "DOWN",
  Left = "LEFT",
  Right = "RIGHT"
}

function move(direction: Direction) {
  // ...
}

move(Direction.Up); // 使用字符串枚举成员作为参数

L'avantage des énumérations de chaînes est que vous pouvez spécifier explicitement la valeur de chaque membre de l'énumération et utiliser ces valeurs dans le code JavaScript compilé. Ils sont utiles pour les scénarios dans lesquels une collection fixe de valeurs de chaîne est requise et où une vérification de type est souhaitée lors du codage.

Types d'union : les types d'union permettent de combiner plusieurs types ensemble, |séparés par un tube ( ). Indique que la variable peut être une valeur de l’un de ces types. Les types d'union ne créent pas un nouvel espace de noms, mais plutôt la possibilité de traiter plusieurs types comme une seule valeur.

type Size = "small" | "medium" | "large";

function setSize(size: Size) {
  // ...
}

setSize("small"); // 使用联合类型的值作为参数

L'avantage des types d'union est qu'ils sont plus flexibles, peuvent combiner plusieurs types différents et peuvent utiliser l'inférence de type de TypeScript pour déduire le type spécifique de la variable. Les types d'union sont utiles pour représenter des situations dans lesquelles une propriété ou un paramètre peut accepter plusieurs valeurs possibles.

Le choix d’utiliser des énumérations de chaînes ou des types d’union dépend de besoins et de scénarios spécifiques. Si vous avez besoin d’une collection fixe et souhaitez une vérification de type stricte, les énumérations de chaînes sont un bon choix. Les types d'union sont mieux adaptés si vous devez représenter plusieurs valeurs possibles et souhaitez plus de flexibilité dans la manipulation et la déduction des types.

Acho que você gosta

Origin blog.csdn.net/wuzhangting/article/details/132449498
Recomendado
Clasificación