Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.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 区间数的模运算_Javascript_Carousel_Modulo_Infinite - Fatal编程技术网

Javascript 区间数的模运算

Javascript 区间数的模运算,javascript,carousel,modulo,infinite,Javascript,Carousel,Modulo,Infinite,假设我们有一个范围[-2,-1,0,1,2,3],它可以被描述为最小值=-2和最大值=3 我们想要实现一个名为InfiniteCaruel()的函数,它将接受任何数字,并使用模运算(或其他一些运算)来计算指定范围内的相应数字 function infiniteCarousel(value, minValue, maxValue) { // todo // use modulus operator to calculate correct number // return

假设我们有一个范围[-2,-1,0,1,2,3],它可以被描述为最小值=-2和最大值=3 我们想要实现一个名为InfiniteCaruel()的函数,它将接受任何数字,并使用模运算(或其他一些运算)来计算指定范围内的相应数字

function infiniteCarousel(value, minValue, maxValue)
{
    // todo
    // use modulus operator to calculate correct number
    // return calculated number 
}


// range = [-2, -1, 0, 1, 2, 3]
const MIN_VALUE = -2;
const MAX_VALUE = 3;

var array = [];

// let's calculate number from -10 to 10
for (var i = -10; i<10; i++)
{
    array.push( infiniteCarousel(i, MIN_VALUE, MAX_VALUE) );
}

// should print [2, 3, -2, -1, 0, 1, 2, 3, -2, -1, 0, 1, 2, 3, -2, -1, 0, 1, 2, 3, -2]
console.log(array);  
函数无穷大(值、最小值、最大值)
{
//待办事项
//使用模数运算符计算正确的数字
//返回计算数
}
//范围=[-2,-1,0,1,2,3]
常量最小值=-2;
常数最大值=3;
var数组=[];
//让我们计算从-10到10的数字

对于(var i=-10;i首先获取
偏移量
,如果
小于
最小值
最大值
,否则
最小值

然后用偏移量调整
,用项目的
计数
获取剩余值,并使用偏移量获取所需范围内的值

函数无穷大(值、最小值、最大值){
变量计数=最大值-最小值+1,

偏移量=值通过将间隔设定为始终从0开始来简化问题(很多)。很好的解决方案。它不适用于正间隔,如最小值=2和最大值=6,您希望从这些值得到什么结果?对于最小值=2和最大值=6,输出应该是从-10到10的[5,6,2,3,4,4,5,6,6,2,3,4,5,6,2,3,4]