Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更好的比率计算100:121->;1:1.21_Javascript - Fatal编程技术网

Javascript 更好的比率计算100:121->;1:1.21

Javascript 更好的比率计算100:121->;1:1.21,javascript,Javascript,我正在计算一些值,并使用以下代码生成比率(1:2、2:5等): 在本例中,它产生了一些技术上正确但丑陋的比率(例如100:121)。我试图找到一种方法,在给定任何大小值的情况下,用小数生成比率。因此,在上面的示例中,我希望能够生成1:1.21,而不是100:121。我曾经考虑过使用比率的长度,并在计算比率后进行除法,但这似乎很不雅观,有没有更数学化的方法呢?如果您没有任何其他复杂的要求,那么 var min = Math.min(col1Sum, col2Sum); var r1 = col1

我正在计算一些值,并使用以下代码生成比率(1:2、2:5等):


在本例中,它产生了一些技术上正确但丑陋的比率(例如100:121)。我试图找到一种方法,在给定任何大小值的情况下,用小数生成比率。因此,在上面的示例中,我希望能够生成1:1.21,而不是100:121。我曾经考虑过使用比率的长度,并在计算比率后进行除法,但这似乎很不雅观,有没有更数学化的方法呢?

如果您没有任何其他复杂的要求,那么

var min = Math.min(col1Sum, col2Sum);

var r1 = col1Sum / min,
    r2 = col2Sum / min;

必须工作。

var min=Math.min(col1Sum,col2Sum);var r1=col1Sum/min,r2=col2Sum/min?有点违背了先找到最大公分母的目的。@zerkms,就是这样。很简单,我想我只是有一个大脑阻塞的一天。如果您添加它作为答案,我将选择它。
var min = Math.min(col1Sum, col2Sum);

var r1 = col1Sum / min,
    r2 = col2Sum / min;