Cita:
Iniciado por Aijoona
Código Javascript
:
Ver originalvar lista = ['CASA', 'CASA', 'PISO', 'PISO', 'PISO', 'PISO', 'ATICO', 'CASA', 'ATICO'];
lista.reduce(function(memo, current) {
memo[current] = memo[current] || 0;
memo[current]++;
return memo;
}, {}); // Object { CASA=3, PISO=4, ATICO=2}
Sólo por tocar las narices
Según
esto habría que refactorizarlo así:
Código Javascript
:
Ver originalvar lista = ['CASA', 'CASA', 'PISO', 'PISO', 'PISO', 'PISO', 'ATICO', 'CASA', 'ATICO'];
lista.reduce(function(memo, current) {
current in memo || (memo[current] = 0);
memo[current]++;
return memo;
}, {}); // Object { CASA=3, PISO=4, ATICO=2}
No sé qué performance hit puede tener en una lista tan pequeña, ni siquiera en una grande, pero tiene sentido que lo haya.
Saludos (: