I'm trying to sum the specific value from json array:
([{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"3","GRUPO_CONCEPTO":"APORTES","CODCON":"3010 ","CONCEPTO":"ESSALUD ","VALOR":"106,1"},
{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2030 ","CONCEPTO":"ADELANTO DE QUINCENA ","VALOR":"350"},
{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2604 ","CONCEPTO":"ADE. MOVILIDAD 1ER","VALOR":"48"},
{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2605 ","CONCEPTO":"ADE. MOVILIDAD 2DO","VALOR":"56"},
EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2090 ","CONCEPTO":"AFP-PRIMA DE SEGURO","VALOR":"16,27"}, .... etc etc
In this case sum the VALORs from the array and put in any variable on javascript.
I got this code:
// some JS code
for (var i in datos){
var HABERES = parseInt(datos[i].VALOR, 10);
HABERES += HABERES;
alert(HABERES);
}
When the alert goes, the result is not the correct..
Is there any problem(s) with that code?
Thank for answers..
I'm trying to sum the specific value from json array:
([{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"3","GRUPO_CONCEPTO":"APORTES","CODCON":"3010 ","CONCEPTO":"ESSALUD ","VALOR":"106,1"},
{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2030 ","CONCEPTO":"ADELANTO DE QUINCENA ","VALOR":"350"},
{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2604 ","CONCEPTO":"ADE. MOVILIDAD 1ER","VALOR":"48"},
{"DESPRO":"PLANILLA DE EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2605 ","CONCEPTO":"ADE. MOVILIDAD 2DO","VALOR":"56"},
EMPLEADOS","ANIO":"2013","MES":"06","NROPER":"201306","PLAGRPCON":"2","GRUPO_CONCEPTO":"DESCUENTOS","CODCON":"2090 ","CONCEPTO":"AFP-PRIMA DE SEGURO","VALOR":"16,27"}, .... etc etc
In this case sum the VALORs from the array and put in any variable on javascript.
I got this code:
// some JS code
for (var i in datos){
var HABERES = parseInt(datos[i].VALOR, 10);
HABERES += HABERES;
alert(HABERES);
}
When the alert goes, the result is not the correct..
Is there any problem(s) with that code?
Thank for answers..
Share Improve this question asked Aug 22, 2013 at 20:31 Jhonatan SandovalJhonatan Sandoval 1,2936 gold badges24 silver badges40 bronze badges 3-
HABERES += HABERES;
. Why are you adding the value to itself? – gen_Eric Commented Aug 22, 2013 at 20:32 -
to increment it ? Is this wrong? ... I tried creating another value (
var SUM += HABERES
) but the result still isn't correct. – Jhonatan Sandoval Commented Aug 22, 2013 at 20:35 - The question seems to be about how to process an array of objects in JavaScript than to be about JSON. – Felix Kling Commented Aug 22, 2013 at 20:40
3 Answers
Reset to default 3Should be something like;
var HABERES = 0;
for (var i in datos){
HABERES += parseInt(datos[i].VALOR, 10);
alert(HABERES);
}
It's hard to tell what you actually want, but I think it's this. Start with HABERES
at 0 and add the values in the loop.
var HABERES = 0;
for (var i in datos){
HABERES += parseInt(datos[i].VALOR, 10);
console.log(HABERES);
}
http://jsfiddle/qGYTH/1/
Replace ,
with .
then parseFloat
var HABERES = 0;
for (var i in datos){
HABERES += parseFloat(datos[i].VALOR.replace(',','.'));
}
alert(HABERES);
HABERES.replace('.',',');
if you want ma on the result.
javascript uses the . as decimal separator.
parseFloat returns also decimal values.
http://jsfiddle/qGYTH/3/ Explosion Pills fiddle with my code.