gpt4 book ai didi

javascript - 如何使用 javascript 中的范围在最小值和最大值之间创建比例?

转载 作者:行者123 更新时间:2023-12-03 10:03:24 24 4
gpt4 key购买 nike

我需要创建一个像这样的动态秤

Range 1  = 0   to 100
Range 2 = 100 to 200
Range 3 = 200 to 300
Range 4 = 300 to 400
Range 5 = 400 to 500
Range 6 = 600 to 700
Range 7 = 700 to 800
Range 8 = 800 to 900
Range 9 = 900 to 1000

这里,范围是 1 到 9,最小值是 0,最大值是 1000。这些范围、最小值和最大值是动态的。

所以,我需要一个函数来返回比例。

例如:-

    function getScales(minRage, maxRange, minValue, maxValue){
var scales={};
..........
............
return scales;
}
//Output:
[
{
range :1
min :0,
max :100
},
{
range :2
min :100,
max :200
},
{
range :3
min :200,
max :300
},
....
....
{
range :9,
min :900,
max :1000
}
]

要获得上述结果,我需要像这样调用函数 getScales(1, 9, 0, 1000)

这就是我的实际要求:如果我调用 getScales(1, 5, 4000, 418500);

最佳答案

看看这个:

function getScales(minRange, maxRange, min, max){
var scales = [], // Prepare some variables
ranges = maxRange+1 - minRange, // Amount of elements to be returned.
range = (max-min)/ranges; // Difference between min and max
for(var i = 0; i < ranges; i++){
scales.push({
range: i+minRange, // Current range number
min: min + range * i,
max: min + range * (i+1)
});
}
return scales;
}

你可以这样调用函数:

getScales(0, 9, 0, 1000);

输出:

[
{
"range": 0,
"min": 0,
"max": 100
},
{
"range": 1,
"min": 100,
"max": 200
},
.......
{
"range": 8,
"min": 800,
"max": 900
},
{
"range": 9,
"min": 900,
"max": 1000
}
]

要消除输出中的浮点错误,您可以替换:

min: range * i,
max: range * (i+1)

与:

min: (range * i).toFixed(2),
max: (range * (i+1)).toFixed(2)

2 替换为小数点后所需的位数。

关于javascript - 如何使用 javascript 中的范围在最小值和最大值之间创建比例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21823756/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com