亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用字符串值創建一個枚舉

用字符串值創建一個枚舉

iOS
偶然的你 2019-10-25 13:15:37
以下代碼可用于enum在TypeScript中創建一個:enum e {    hello = 1,    world = 2};可以通過以下方式訪問這些值:e.hello;e.world;如何創建enum帶有字符串值的?enum e {    hello = "hello", // error: cannot convert string to e    world = "world"  // error };
查看完整描述

3 回答

?
森林海

TA貢獻2011條經驗 獲得超2個贊

TypeScript 2.4+


現在,您可以直接將字符串值分配給枚舉成員:


enum Season {

    Winter = "winter",

    Spring = "spring",

    Summer = "summer",

    Fall = "fall"

}

有關更多信息,請參見#15486。


TypeScript 1.8以上


在TypeScript 1.8+中,您可以創建一個字符串文字類型來定義該類型,并為值列表創建一個名稱相同的對象。它模仿字符串枚舉的預期行為。


這是一個例子:


type MyStringEnum = "member1" | "member2";


const MyStringEnum = {

    Member1: "member1" as MyStringEnum,

    Member2: "member2" as MyStringEnum

};

它將像字符串枚舉一樣工作:


// implicit typing example

let myVariable = MyStringEnum.Member1; // ok

myVariable = "member2";                // ok

myVariable = "some other value";       // error, desired


// explict typing example

let myExplicitlyTypedVariable: MyStringEnum;

myExplicitlyTypedVariable = MyStringEnum.Member1; // ok

myExplicitlyTypedVariable = "member2";            // ok

myExplicitlyTypedVariable = "some other value";   // error, desired

確保鍵入對象中的所有字符串!如果不這樣做,則在上面的第一個示例中,該變量將不會隱式鍵入為MyStringEnum。


查看完整回答
反對 回復 2019-10-25
  • 3 回答
  • 0 關注
  • 697 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號