Así que tengo una serie de 4 objetos JSON con datos anidados dentro de cada uno de ellos. Cada uno de estos objetos se almacena en una matriz llamada clases. Aquí hay un ejemplo de cómo se formatea uno de los objetos de clase:
let class_A = { professor: "Joey Smith", numberStudents: 25, courseCode: "COMS 2360", seating: { "FirstRow": { 0: { firstName: "Sarah", collegeMajor: "English", }, 1: { firstName: "Bob", collegeMajor: "Computer Engineering", }, 2: { firstName: "Dylan", collegeMajor: "Mathematics", } }, "SecondRow": { 3: { firstName: "Molly", collegeMajor: "Music" } } } };Estoy luchando por descubrir cómo acceder a los últimos campos dentro de cada objeto de clase (firstName y collegeMajor). Lo más lejos que pude obtener fueron los índices debajo de cada número de fila.
let classes = [class_A, class_B, class_C, class_D]; let classesAvailable = document.getElementById('classes'); let class = classes[classesAvailable.value]; for(rowNum in class.seating){ for(index in class.seating[rowNum]){ console.log(index); //console.log(class.seating[rowNum[index]].firstName); } }Entonces, en este ejemplo, console.log(index) imprime:
0 1 2 3pero no puedo imprimir el nombre y la carrera universitaria de cada estudiante en cada fila. Estaba tratando de seguir una lógica similar y hacer console.log(class.seating[rowNum[index]].firstName) pero aparece el error:
Cannot read properties of undefined (reading 'firstName')Me preguntaba si alguien sabe qué está mal con mi lógica aquí.
console.log(class.seating[rowNum][index])