Skip to content

Instantly share code, notes, and snippets.

@teles
Last active January 17, 2020 13:12
Show Gist options
  • Save teles/d127309ede806b5a96d27148d32ec3ae to your computer and use it in GitHub Desktop.
Save teles/d127309ede806b5a96d27148d32ec3ae to your computer and use it in GitHub Desktop.
const transformarLinhas = (linhas) => {
return linhas.split("\n")
.filter(n => n)
.map(line => {
const data = line.split("\t")
total += parseInt(data[1]);
return {
destino: data[0],
sessoes: parseInt(data[1])
};
})
};
const agruparSessoes = (resultados) => {
// sessoes é um vetor de objetos que tem duas chaves: destino e sessoes
const canonicalPattern = /revista\/([^/]+)/
const canonicas = {};
resultados.forEach(resultado => {
resultado.sessoes = window.parseInt(resultado.sessoes.toString().replace(".", ""));
const canonical = resultado.destino.match(canonicalPattern) ? resultado.destino.match(canonicalPattern)[1] : resultado.destino;
canonicas[canonical] === undefined ? canonicas[canonical] = resultado.sessoes : canonicas[canonical] += resultado.sessoes;
});
return Object.keys(canonicas).map(canonica => {
return {
url: canonica,
sessoes: canonicas[canonica]
}
}).sort((urlA, urlB) => urlA.sessoes > urlB.sessoes );
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment