Objeto que retorna NaN quando soma valores
Eu admito que sou fraco em JavaScript e JSON. Passei muito tempo tentando descobrir por que os números dos meus objetos retornam NaN quando são adicionados juntos. Com isso em mente, abaixo está meu JSON, armazenado em uma variável:
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
}
]
Eu então tento iterar os objetos e somar os valores:
var jan;
for (var i=0;i<data.length;i++){
if(data[i].jan != null){
jan += parseFloat(data[i].jan);
console.log(jan);
}
}
Impresso no console éNaN
. Eu tentei analisar o número, bem como deixá-lo cru, mas sem sucesso. Há algo de errado com meus objetos? Aqui está um jsFiddle para ilustrar:http://jsfiddle.net/5E2pm/3/