Как получить ключ для массива с его значением равным True - PullRequest
0 голосов
/ 05 апреля 2019

Я пытаюсь получить все ключи на моем объекте со значением "T" (true) и показать их в компоненте, но у меня возникают проблемы.

Я пытался использовать for и forEach, но я не могу получить ключи.

Это мой метод рендеринга, и это объект

render(){
   const races = this.state.data.racesTrack.Races;
        const racesList = [];
}

Мне нужно увидеть это так

exacta
hq
place:
quinella
show: 
spr: 
trifecta: 
wps:


  Image with the object: https://i.stack.imgur.com/en09V.png

Ответы [ 2 ]

2 голосов
/ 05 апреля 2019

Вы можете сделать что-то подобное в ES6:

var raceList = []
var races = {
  a: "T",
  b: "F",
  c: "T",
  d: "F"
}

for (key in races) {
  if (races[key] == "T") {
    raceList.push(key)
  }
}

console.log(raceList)
0 голосов
/ 05 апреля 2019

Задача, которую вы задаете, не связана с Reactjs и касается основ javascript.

Более простым решением может быть использование массива ключей объекта и метода Filter:

var race = {
  a: "T",
  b: "F",
  c: "T",
  d: "F"
}
var sort = Object.keys(race).filter((key)=>{
  return race[key]==='T'
})
console.log(sort)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...