Javascript 比较持续时间返回匹配的百分比
我需要比较两个持续时间并生成匹配的百分比 例如,我有一个可信的持续时间,第二个持续时间需要与第一个进行比较 公差为8%,这意味着第二个持续时间可以比受信任的持续时间长8%或短8% 如果持续时间2>1-8%和&2<1+8% 回报100% 最后,我的函数必须返回两个持续时间之间的匹配百分比 你知道怎么做吗 谢谢大家! 因为:Javascript 比较持续时间返回匹配的百分比,javascript,node.js,algorithm,compare,percentage,Javascript,Node.js,Algorithm,Compare,Percentage,我需要比较两个持续时间并生成匹配的百分比 例如,我有一个可信的持续时间,第二个持续时间需要与第一个进行比较 公差为8%,这意味着第二个持续时间可以比受信任的持续时间长8%或短8% 如果持续时间2>1-8%和&21*值 100%-8%值-->92%值-->0.92*值 100%+8%值-->108%值-->1.08*值 可以执行以下操作 if (duration2 > duration1 * 0.92 && duration2 < duration1 * 1.08)
- 100%值-->1*值
- 100%-8%值-->92%值-->0.92*值
- 100%+8%值-->108%值-->1.08*值
if (duration2 > duration1 * 0.92 && duration2 < duration1 * 1.08) {
return 1; // if inside -8% +8% returns 100%
} else {
// If not in the -8% or +8% returns percentage
return Math.abs((duration2 / duration1) - 1);
}
注意:不清楚您是否需要绝对百分比或签名百分比。从第一个更改为第二个可以删除函数Math.abs,因为:
var d1 = 100; // trusted
var d2 = 108; // other
var diff = d2 - d1;
var percent = (diff / d1) * 100;
console.log(percent, "%");
if(Math.abs(percent) > 8) {
console.log("Ut oh");
} else {
console.log("In the sweet spot");
}
- 100%值-->1*值
- 100%-8%值-->92%值-->0.92*值
- 100%+8%值-->108%值-->1.08*值
if (duration2 > duration1 * 0.92 && duration2 < duration1 * 1.08) {
return 1; // if inside -8% +8% returns 100%
} else {
// If not in the -8% or +8% returns percentage
return Math.abs((duration2 / duration1) - 1);
}
注意:不清楚您是否需要绝对百分比或签名百分比。从第一个更改为第二个可能会删除函数Math.abs哪部分您不知道如何转换为JavaScript?如何获得良好的匹配百分比!哪一部分你不知道如何翻译成JavaScript?如何获得很好的匹配率!
var d1 = 100; // trusted
var d2 = 108; // other
var diff = d2 - d1;
var percent = (diff / d1) * 100;
console.log(percent, "%");
if(Math.abs(percent) > 8) {
console.log("Ut oh");
} else {
console.log("In the sweet spot");
}