let pokeApi = ()=>{ let randomize = Math.floor(Math.random() * 898); let url = `https://pokeapi.co/api/v2/pokemon/${randomize}` fetch(url) .then((res) => res.json()) .then((data) => { console.log(data) let {height, weight, stats:{0: {base_stat}} } = data; }) } pokeApi();stats se define como una matriz con 6 objetos. Estoy tratando de llamar a la línea 0, y dentro de 0 el nombre, pero cada vez que escribo un número me da un error que no puedo solucionar a menos que elimine el número.
¿Cómo puedo desestructurar para que sea igual a esto... data.stats[0]["base_stat"]
Para obtener el primer elemento de la matriz con la ayuda de la desestructuración, puede hacer lo siguiente:
stats:[ {base_stat: firstBaseStat} ]
Así que la desestructuración final será como,
let {height, weight, stats:[ {base_stat: firstBaseStat} ] } = data; Y puede utilizar firstBaseStat para obtener el primer valor.
Ejemplo de trabajo:
let pokeApi = ()=>{ let randomize = Math.floor(Math.random() * 898); let url = `https://pokeapi.co/api/v2/pokemon/${randomize}` fetch(url) .then((res) => res.json()) .then((data) => { let {height, weight, stats:[ {base_stat: firstBaseStat} ] } = data; console.log('height ', height, 'weight ', weight, 'first stats ', firstBaseStat) }) } pokeApi();