¿Cómo iterar de una mejor manera a través de A y B?
Estructura de datos A:
AbsatzNrSaetzeText: { [key: string]: string[]
};
Estructura de datos B:
AbsatzNrSaetzeText: Record<number, string[]>;
¿Hay una mejor manera de obtener ese valor?
for (var i = 0; i < this.UI_Seiten.length; i++) { for (var j in this.UI_Seiten[i].AbsatzNrSaetzeText) { for (var k = 0; k < this.UI_Seiten[i].AbsatzNrSaetzeText[j.valueOf()].length; k++) { console.log(this.UI_Seiten[i].AbsatzNrSaetzeText[j.valueOf()][k]); } } }
Para objetos iterables (como matrices), no hay necesidad de hacer referencia al índice para iterar sobre los valores; for..of
permite un código significativamente más limpio, al colocar el valor que se itera directamente en un identificador que se puede usar en bucles posteriores.
Use Object.values
en lugar de for..in
, ya que no le importa la clave del objeto, solo el valor.
for (const seiten of this.UI_Seiten) { for (const arr of Object.values(seiten.AbsatzNrSaetzeText)) { for (const str of arr) { console.log(str); } } }