CoffeScript - sumar propiedades de un JSON



   AUTOR PREGUNTA

Publicado 01 junio 2014 - 19:40

¿Cómo puedo sumar propiedades de un objeto de tipo JSON en coffescript? Mi objeto luce de la siguiente manera:

object = title : 'objeto' properties : attribute1 : random_number: 4 attribute_values: a: 16 b: 'sin result' attribute2 : random_number: 8 attribute_values: a: 11 b: 'sin result' some_random_stuff: 'aleatorio'



2 personas más tuvieron esta duda Yo también

 

Publicado 01 junio 2014 - 22:29

En base a tu objeto te dejo lo siguiente:

sum_attributes = (x) => 
sum = 0
for name, value of object.properties
sum += value.attribute_values[x]
sum
alert sum_attributes('a')
alert sum_attributes('b')

Publicado 01 junio 2014 - 22:38

Puedes tratar con algo más funcional incluyendo Underscore.js, te dejo como sería:

sum = (arr) -> _.reduce arr, ((memo, num) -> memo + num), 0 sum _.pluck(object.properties, 'a')

   AUTOR PREGUNTA

Publicado 02 junio 2014 - 03:00

Gracias a ambos