在javascript数组中查找最小-最大值

in javascript array find min max values

本文关键字:最大值 查找 javascript 数组      更新时间:2023-09-26

我有一些这样的数组,数组中的数字表示插槽编号槽1={3,4,5,6}插槽2={1,2,3,4,5,6}插槽3={8,9,10}
我正在查找所选插槽是否连续
前两个数组给出了正确的最小值和最大值。但是第三个数组给出了min=10、max=9。如何纠正?我正在寻找像这个一样的最大值

for(var s=0;s<no_slots;s++)//finding maximum value of slots array
        {    
             if(s == 0)
             { 
              var slots_max = slots[s];
             }
             else
             {
                    if(slots[s] > slots_max)
                    {
                      slots_max = slots[s];
                    }
             }              
        }  

使用JS Math对象:

最小值:Math.min.apply(null,slots);
最大值:Math.max.apply(null,slots);

我不确定为什么您的函数不能正确地用于第三种情况。您可能错过了一些愚蠢的东西,比如初始化或类似的东西。由于我已经修改了您的一些代码,它正在正确返回。你也可以把它变短。

var slots = [8, 9, 10]
var slots_max = slots[0];
for (var s = 0; s < slots.length; s++) //finding maximum value of slots array
{
   if (slots[s] > slots_max) {
         slots_max = slots[s];
      }
}
alert(slots_max);

Js Fiddle

您可以尝试使用Javascript Math库查找最小值/最大值。这应该会返回正确的结果。

var min = Math.min.apply(null, slots3);
var max = Math.max.apply(null, slots3);

有关详细信息,请参阅此答案。