Javascript 如何根据给定的经验获得该级别?
我有一个公式,根据某个水平计算经验,另一个公式根据给定的经验计算水平。 但第二个函数不返回预期值Javascript 如何根据给定的经验获得该级别?,javascript,math,Javascript,Math,我有一个公式,根据某个水平计算经验,另一个公式根据给定的经验计算水平。 但第二个函数不返回预期值 const levels=40; 第一级的常数xp\u=1000; 最后一级的常数xp\u=1000000; const getExperience=level=>{ const B=Math.log(xp\u表示最后一级/xp\u表示第一级)/(级别-1); 常数A=第一级的xp_/(数学经验(B)-1.0); const old_xp=Math.round(A*Math.exp(B*(1级))
const levels=40;
第一级的常数xp\u=1000;
最后一级的常数xp\u=1000000;
const getExperience=level=>{
const B=Math.log(xp\u表示最后一级/xp\u表示第一级)/(级别-1);
常数A=第一级的xp_/(数学经验(B)-1.0);
const old_xp=Math.round(A*Math.exp(B*(1级));
const new_xp=Math.round(A*Math.exp(B*level));
返回新的\u xp-旧的\u xp;
};
const getLevel=experience=>{
const B=Math.log(xp\u表示最后一级/xp\u表示第一级)/(级别-1);
常数A=第一级的xp_/(数学经验(B)-1.0);
返回Math.ceil(Math.log(experience/A)/B);
};
console.log(getLevel(xp_表示第一级));//-9
console.log(getLevel(xp_表示最后一级));//30
我认为公式应该改变,我尝试了这个,它给出了正确的返回
const getLevel = experience => {
const B = Math.log(xp_for_last_level / xp_for_first_level) / (levels + 1);
const A = xp_for_first_level - 1;
return Math.ceil(Math.log(experience / A) / B);
};
const getLevel=experience=>{const B=Math.log(xp_表示最后一级/xp_表示第一级)/(levels-1);const A=xp_表示第一级-1.0;返回Math.ceil(Math.log(experience/A)/B)代码>这非常有效。谢谢你给我澄清!