Получение значения на основе идентификатора из Enums в Javascript

1

Это было довольно долго, когда я исследовал различные способы реализации перечислений в JavaScript

например, у меня есть имена Enum как 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. Теперь из этой информации, как я могу получить детали, такие как описание. В этом случае он должен вернуть "Дебетовую карту".

Искал много в интернете, но не смог получить никакого результата.

Теги:
enums

2 ответа

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))
0

Порядок свойств объектов JavaScript не гарантируется, поэтому вам нужно будет использовать массив, если вы хотите указать позицию. Смотрите этот вопрос.

В качестве альтернативы вы можете получить требуемое свойство, используя значение id внутри него? (См. Ответ Прасада выше)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню