Objeto que devuelve NaN cuando suma valores
Admito que soy débil en JavaScript y JSON. He pasado mucho tiempo intentando averiguar por qué los números de mis objetos devuelven NaN cuando se suman. Con eso en mente, a continuación está mi JSON, almacenado en una variable:
var data = [
{
"acc_ext_id": null,
"cat_code": 10002,
"cat_ds": "REVENUE",
"category_id": null,
"chart_id": null,
"created_at": null,
"dept_id": null,
"feb": null,
"id": null,
"jan": 30,
"note": null,
"total_cost": null,
"updated_at": null,
"year_id": null
},
{
"acc_ext_id": "41260-02600",
"cat_code": 10002,
"cat_ds": "REVENUE",
"category_id": 2,
"chart_id": 2373,
"created_at": "2013-01-15 16:43:52.169213",
"dept_id": 86,
"feb": 45,
"id": 3,
"jan": 60,
"note": "Two",
"total_cost": 105,
"updated_at": "2013-01-15 16:43:52.169213",
"year_id": 1
}
]
Luego intento recorrer los objetos y sumar los valores:
var jan;
for (var i=0;i<data.length;i++){
if(data[i].jan != null){
jan += parseFloat(data[i].jan);
console.log(jan);
}
}
Impreso en la consola esNaN
. Intenté analizar el número y dejarlo en bruto, pero fue en vano. ¿Hay algo mal con mis objetos? Aquí hay un jsFiddle para ilustrar:http://jsfiddle.net/5E2pm/3/