2024-10-31 12:23:43
对于现在技术社区的现状的,我分析用户画像觉得大部分的用户更多的是喜欢短频快的节奏文章,所以故尝试用最短时间挖掘简单的面试题,将背后的知识整理分享给大家,喜欢在后续的面试过程中,可以对你有帮助,如果刚好是自己的知识盲区不妨帮忙点赞支持一下
背景我们TS会经常遇到不知道该如何使用枚举enums场景,接下来我们分析用户的场景然后进行实际应用吧
enums语法//枚举enumsenumDirection{Up,Down,Left,Right,}console.log(Direction.Up);//构建了Up索引console.log(Direction[0]);//构建了0索引双向构建索引编译后,我们发现有趣的地方是双向构建索引的机制,将顺序索引和Key索引都构建起来
varDirection;(function(Direction){Direction[Direction["Up"]=0]="Up";Direction[Direction["Down"]=1]="Down";Direction[Direction["Left"]=2]="Left";Direction[Direction["Right"]=3]="Right";})(Direction||(Direction={}));正确使用enum姿势第一种情况当我们定义枚举的时候,直接使用关键词enum时候
//不使用const枚举enumsenumDirection{Up='UP',Down='Down',Left='Left',Right='Right',}constvalue='UP'if(value===Direction.Up){//dosomething}编译后
//枚举enumsvarDirection;(function(Direction){Direction["Up"]="UP";Direction["Down"]="Down";Direction["Left"]="Left";Direction["Right"]="Right";})(Direction||(Direction={}));varvalue='UP';if(value===Direction.Up){//dosomething}第二种情况当我们使用const关键词命名枚举的情况下,我们会惊喜地发现变化
//使用const定义枚举enumsconstenumDirection{Up='UP',Down='Down',Left='Left',Right='Right',}constvalue='UP'if(value===Direction.Up){//dosomething}编译后
varvalue='UP';if(value==="UP"/*Up*/){//dosomething}所以合理地使用enum?枚举对提高应用的性能来说是帮助很大的
小结这篇文章到这里就结束了,水平有限难免有纰漏,欢迎纠错。最后希望帮忙点点赞,这对我创作是无比的肯定和动力。希望可以帮到你
原文:https://juejin.cn/post/7098542845824335902