Soy un principiante de JavaScript y no entiendo por qué cuando creo instancias de una clase y las almaceno en una matriz, puedo acceder a las variables de instancia fuera de un bucle for y obtener el valor correcto, pero dentro de un bucle for no lo hace trabajar como estaba previsto.
class TestClass{ constructor(foo){ this.foo = foo; } } var classArray = []; for (var i=0; i<10; i++){ classArray.push(new TestClass(i)); } var total = 0; for (obj in classArray){ total += obj.foo; } console.log(total); console.log(classArray[0].foo);Esto da la salida de:
NaN 0El 0 es como esperaba, pero no veo por qué da NaN para la suma. Cualquier ayuda sería apreciada, gracias.