Supongamos que tengo una estructura de código como la siguiente,
const fruits = [ `apple`, `banana`, `orange` ]; for ( let i = 0; i < fruits.length; i++ ) { const res = fruits[ i ]; console.log ( res ); // apple banana orange }Quiero desestructurar el
const res = fruits[ i ];¿Es posible y puedo usar forEach para lograr la desestructuración pero quiero lograr lo mismo usando el ciclo for?
Gracias por adelantado.
PD: se puede usar forEach o for..in, pero quiero obtener la misma desestructuración dentro del ciclo for.
Si absolutamente quieres mantener el bucle for clásico:
const fruits = [`apple`, `banana`, `orange`]; for (let i = 0; i < fruits.length; i++) { const { [i]: res } = fruits; console.log(res); // apple banana orange } Como una sintaxis más corta, for..of funciona con objetos iterables (como matrices).
Puedes usarlo así:
const fruits = [`apple`, `banana`, `orange`]; for (const fruit of fruits) { console.log(fruit); // apple banana orange } Para ir más allá, incluso puede usar la desestructuración en un bucle for..of (por ejemplo, para recuperar las longitudes de las cadenas):
const fruits = [`apple`, `banana`, `orange`]; for (const { length } of fruits) { console.log(length); // 5 6 6 }