在Javascript中从Enums获取Id的价值

时间:2017-06-07 08:01:17

标签: javascript enums

在我探讨在 javaScript

中实施枚举的不同方法时,已经有一段时间了

说我的枚举名称为Medium

    Medium : {
            ONLINE : {id: 1, desc: "Online"},
            CREDIT : {id: 2, desc: "Credit Card"},
            DEBIT : {id: 3, desc: "Debit Card"},
            NETBANKING : {id: 4, desc: "Net Banking"}
   }

说我得到的信息是媒介是3。 现在从这些信息中我如何获得描述等细节。在这种情况下,它应该返回"借记卡"。

在互联网上搜索了很多但却无法获得任何领先优势。

2 个答案:

答案 0 :(得分:0)

JavaScript对象中的属性顺序不受保证,因此如果要指定位置,则需要使用数组。请参阅this S.O question

或者,您可以通过使用其中的id值来获取所需的属性? (见上面的Prasad答案)

答案 1 :(得分:0)

尝试使用Array#find方法



var   PaymentMedium ={
            ONLINE : {id: 1, desc: "Online"},
            CREDIT : {id: 2, desc: "Credit Card"},
            DEBIT : {id: 3, desc: "Debit Card"},
            NETBANKING : {id: 4, desc: "Net Banking"}
   }
   
   function get(id){
   return Object.values(PaymentMedium).find(a=> (a.id == id)).desc
   }
   console.log(get(3))