calcularAtraccao
by joplomacedo
JavaScript
/*const pesosAtributoEmFuncaoDoObservador = {
'm:0-5': {},
'm:5-20': {},
'm:5-25': {},
'm:25-30': {},
'm:30-45': {},
'm:45-60': {},
'm:60-150': {},
'f:0-5': {},
'f:5-20': {},
'f:5-25': {},
'f:25-30': {},
'f:30-45': {},
'f:45-60': {},
'f:60-150': {},
};
function calcularAtraccao( atributosObservado, atributosObservador ) {
const { aparencia, personalidade } = atributosObservado
const { idade } = atributosObservador;
let relativaAparencia;
const fatorX = (10-personalidade)/2
if ( aparencia >= 5 ) {
relativaAparencia = aparencia + fatorX
} else {
relativaAparencia = aparencia - fatorX
}
return personalidade/2 + relativaAparencia/2;
}
const atributosPorPessoa = {
henrique: {
aparencia: 10,
personalidade: 4
},
pedro: {
aparencia: 5,
personalidade: 5
}
}
const atributosObservador = {
sexo: 'm',
idade: 29
}
const atraccaoPorPessoa = Object.fromEntries(
Object.entries(atributosPorPessoa).map( ([nome, atributos]) => {
return [nome, calcularAtraccao(atributos, atributosObservador)]
})
);
console.log(atraccaoPorPessoa);
*/