En el código a continuación, llamo a una API de la NBA y creo una matriz a partir de un soporte específico dentro de ella. Sin embargo, esto solo me da una matriz llena de números, que son las identificaciones del equipo de la NBA. Estoy tratando de cambiar todos los valores en el nombre del equipo y enumerarlos. Por ejemplo, '29' serían los Portland Trailblazers; 25 sería el Oklahoma City Thunder.
He probado varios hilos con problemas similares, pero todavía tengo que encontrar algo que funcione.
Código:
var idarray = []; var idz = response.api.standings for (var i = 0; i < idz.length; i++) { idarray.push(idz[i].teamId); } console.log(idarray)Matriz que imprime desde el código anterior:
[ '41', '5', '20', '1', '26', '24', '4', '27', '38', '2', '6', '21', '7', '15', '10', '19', '14', '8', '31', '23', '11', '30', '28', '16', '17', '40', '22', '9', '29', '25' ]1. En primer lugar, debe asignar todos los ID de equipo a sus nombres, algo como esto:
// key -> ID, value -> name const teamNames = { 25: 'Oklahoma City Thunder', 29: 'Portland Trailblazers', ... }2. Luego puedes transformar tu matriz:
// For example idarray = [25, 29] initially idarray = idarray.map(id => teamNames[id]); console.log(idarray);Producción:
[ 'Oklahoma City Thunder', 'Portland Trailblazers' ]Extra: la matriz mapeada está lista para imprimirse como lista de posiciones, por ejemplo:
for (let index in idarray) { console.log(`${index + 1}. ${idarray[index]}`); }Producción:
1. Oklahoma City Thunder 2. Portland Trailblazers