Javascript - 查找用户输入数字的中间值

时间:2014-10-04 21:00:26

标签: javascript html max min

我无法解决这个问题,我认为这可能是一个简单的解决方案,但我的措辞不正确。

我知道如何找到3个输入数字的最大值。

largest = Math.max(number1, number2, number3);  // this code finds largest number

我知道如何找到最小的数字

smallest = Math.min(number1, number2, number3); //smallest number

我无法弄清楚如何找到中间数字

因此,当用户输入3个数字时,例如9,6,12(按此顺序)

number1= 9 //first number user entered
number2 = 6 // second number user entered
number3 = 12 // third number user entered

现在我有代码找到最小和最大,6和12.但我不知道如何调用中间。我可以调用Math.middle函数吗?我不是在寻找数组中的中间元素,我只想要输入的3个数字的中间值。

希望这是有道理的。

3 个答案:

答案 0 :(得分:1)

没有Math.middle功能,我不确定你想要在这里实现什么,但如果你只是想找到3位数的中间数字,那么这可以是你的答案: -

function middleNumber(a,b,c){
    var arr=[];
    //Fill a array with the values
    arr[0]=a;
    arr[1]=b;
    arr[2]=c;
    //Sort the array and return the middle element
    arr.sort();
    return arr[1]; 
}

alert(middleNumber(1,2,3));

以下是相同的工作示例: - http://jsfiddle.net/k0ruk1sq/

答案 1 :(得分:1)

尝试这种方法:

middle = number1+number2+number3 - Math.min(number1, number2, number3) - Math.max(number1, number2, number3);

答案 2 :(得分:0)

我会使用偏差,作为输入我得到一些input_array(用户输入的值......)并获得该数组的长度并将其分成两半。此函数将返回中间元素的索引。最后只返回该索引的值。

但如果数组的长度是奇数,你必须明白有问题:p。